접근
MySQL 터미널에서 실행하기
> mysql -u root -p
Shell
복사
데이터베이스 생성 및 확인
> CREATE DATABASE dbname;
Shell
복사
> show databases;
Shell
복사
데이터베이스 사용(이동)
> use dbname;
Shell
복사
데이터베이스 삭제
> drop database dbname;
Shell
복사
User 관리
사용자 정보는 mysql 이라는 데이터베이스에서 관리하므로 mysql 데이터베이스로 이동후 조회
> use mysql;
> select host, user from user;
Shell
복사
사용자는
local PC 에서 접속 가능한 사용자(localhost)와 외부에서 접속 가능한 사용자로 나눌 수 있다.
User 생성하기 - localhost
> create user 'username'@'localhost'identified by 'password';
Shell
복사
예제. user name이 ‘noma’ 인 localhost 생성하기
> use mysql; -- mysql db 로 이동
> create user 'noma'@'localhost' identified by '1234';
> select host, user from user;
Shell
복사
User 생성하기 - 외부 사용자(’%’)
> create user 'username'@'%'identified by 'password';
SQL
복사
예제. user name 이 ‘noma’인 외부 사용자 생성하기
> use mysql; -- mysql db 로 이동
> create user 'noma'@'%' identified by '5678';
> select host, user from user;
Shell
복사
유저 이름이 동일해도 host 가 다르다면 문제없다!
User 삭제하기
> drop user 'username'@'localhost'; -- localhost 사용자 삭제
> drop user 'username'@'%'; -- 외부 접속 사용자 삭제
SQL
복사
User 권한 관리
실습하기 위한 데이터베이스 생성
> CREATE DATABASE testdb;
SQL
복사
사용자 생성하기 - localhost
> use mysql;
> CREATE USER 'noma'@'localhost' identified by '1234';
> select host, user from user;
Shell
복사
사용자 권한 확인
> show grants for 'username'@'localhost'; -- 사용자이름이 username이고, localhost인 사용자에게 부여된 권한 모두 확인하기
SQL
복사
기본적인 사용 권한만 가지고 있다.
특정 데이터베이스 모든 권한 부여 - grant
grant all on dbname.* to 'username'@'localhost';
SQL
복사
실습용 testdb 데이터베이스에 모든 사용자 권한을 부여해준 것을 확인했다.
flush privileges;
SQL
복사
특정 데이터베이스 모든 권한 삭제 - revoke
revoke all on dbname.* from 'username'@'localhost';
SQL
복사
아까 추가했던 권한이 잘 삭제된 것을 확인했다.
Table 생성
실습 ) id(int) 와 name(varchar(16)) 칼럼을 가지는 mytable 이라는 이름의 테이블 생성
create table mytable(
id int,
name varchar(16)
);
SQL
복사
테이블 목록 확인하기
show tables;
SQL
복사
특정 테이블의 정보 확인(컬럼 타입 등)
desc tablename;
SQL
복사
Table 변경
Table 이름 변경
alter table tablename rename new_tablename;
SQL
복사
Column 추가
alter table tablename add column columnname datatype;
SQL
복사
Column 수정
1.
data type 변경
alter table tablename modify column columnname datatype;
SQL
복사
2.
컬럼 이름, data type 동시 변경
alter table tablename change column old_columnname new_columnname new_datatype;
SQL
복사
3.
column 삭제
alter table tablename drop column columnname;
SQL
복사
Table 삭제
drop table tablename;
SQL
복사