계정 접속
mysql -u 계정명 -p
Enter password: 패스워드 입력
계정 확인 / 현재 계정 확인
select user, host from mysql.user; // 모든 계정 및 외부접근 허용정보 확인
select current_user; // 현재 접속 중인 계정 확인
USER 추가
create user 계정명; // 비밀번호 없이
create user '계정명'@localhost identified by '패스워드'; // 비밀번호 있는 계정 생성
create user '계정명'@'[하단 표 참조]' identified by '패스워드'; // 외부에서 접근 가능 계정 생성
|
표기 |
설명 |
% |
% |
어디서든 |
IP |
XXX.XXX.XXX.XXX |
해당 IP에서만 |
IP.% |
XXX.XXX.% |
특정 대역 IP만 |
USER 삭제
drop uesr 계정명;
drop uesr 계정명@host;
USER 권한 부여
# 모든 데이터베이스의 모든 테이블에 모든 권한을 줌
grant all privileges on *.* to '사용자'@'localhost';
# 특정 데이터베이스의 모든 테이블에 모든 권한을 줌
grant all privileges on DB이름.* to '사용자'@'localhost';
# 특정 데이터베이스의 특정 테이블에 모든 권한을 줌
grant all privileges on DB이름.테이블명 to '사용자'@'localhost';
# 특정 데이터베이스의 특정 테이블에 select 권한을 줌
grant select on DB이름.테이블명 to '사용자'@'localhost';
# 특정 데이터베이스의 특정 테이블에 select, insert 권한을 줌
grant select, insert on DB이름.테이블명 to '사용자'@'localhost';
# 특정 데이터베이스의 특정 테이블의 컬럼 1과 컬럼 2의 update 권한을 줌
grant update(컬럼 1, 컬럼 2) on DB이름.테이블명 to '사용자'@'localhost';
USER 생성과 권한 부여
grant all privileges on *.* to '사용자'@'localhost' identified by '비밀번호';
권한 반영
FLUSH PRIVILEGES;
USER 권한 삭제
revoke all on DB이름.테이블이름 from 계정;
revoke all on DB이름.테이블이름 from 계정@host;
USER 권한 확인
show grants for 계정명;
show grants for 계정명@host;
데이터베이스 보기
show databases;
데이터베이스 생성
create database DB명;
데이터베이스 사용
use DB명;
데이터베이스 테이블 출력
show tables;
테이블 구조 출력
desc 테이블명;
테이블 생성
create table 테이블명(
속성명 데이터타입(크기) [not null],
속성명 데이터타입(크기),
primary key(속성명),
foreign key(참조하는 속성명) referenes 테이블명(참조되는 속성명
);
테이블 삭제
drop table 테이블명;
한글 설정
# 데이터베이스 한글 인코딩
alter database 데이터베이스명 default character set utf8 collate utf8_general_ci;
# 테이블 한글 인코딩
alter table 테이블명 default character set utf8 collate utf8_general_ci;
-> quit 하고 mysql 종료 후
윈도우 검색창 -> 서비스 -> mysql 재시작
이 과정을 해야만 한글 인코딩 적용 됨
뷰 생성
create view 뷰이름 as select 속성명1, 속성명2, ... from 테이블명 where 조건;
뷰 삭제
drop view 뷰이름;
insert문
insert into 테이블명 values(속성1, '속성2', 속성3); // 모든 속성의 값을 한 번에 넣을 때
insert into 테이블명(속성1, 속성2) values('속성1값', 속성2값); // 일부 속성의 값만 넣을 때
insert into 테이블명 values(속성1, 속성2,) , (속성1, 속성2); // 여러 튜플을 한 번에 입력할 때
update문
update 테이블명 set 속성명 = 바꿀값 where 조건