====== MySQL ======
===== 시작 =====
==== 설치 ====
==== 설정 ====
===== 일반 관리 =====
==== 데이터베이스 ====
=== 생성/삭제 ===
''TEST'' 데이터베이스를 생성하는 경우 MySQL 콘솔에서 다음과 같이 입력한다.
CREATE DATABASE TEST;
''TEST'' 데이터베이스를 삭제하는 경우 MySQL 콘솔에서 다음과 같이 입력한다.
DROP DATABASE TEST;
=== 백업/복구 ===
''USER'' 계정으로 모든 데이터베이스를 백업해서 ''BACKUP.sql'' 파일로 저장하는 경우 쉘에서 다음과 같이 입력한다.
mysqldump -u USER -p --all-databases > BACKUP.sql
''USER'' 계정으로 ''TEST'' 데이터베이스를 백업해서 ''BACKUP.sql'' 파일로 저장하는 경우 쉘에서 다음과 같이 입력한다.
mysqldump -u USER -p --databases TEST > BACKUP.sql
- 또는 -
mysqldump -u USER -p TEST > BACKUP.sql
''USER'' 계정으로 ''BACKUP.sql'' 파일로부터 모든 데이터베이스를 복구하는 경우 쉘에서 다음과 같이 입력한다.
mysql -u USER -p < BACKUP.sql
''USER'' 계정으로 ''BACKUP.sql'' 파일로부터 ''TEST'' 데이터베이스를 복구하는 경우 쉘에서 다음과 같이 입력한다.
mysql -u USER -p TEST < BACKUP.sql
또는, MySQL 콘솔에서 다음과 같이 입력한다.
source BACKUP.sql
==== 테이블/컬럼 ====
=== 테이블 생성/삭제 ===
=== 테이블 백업/복구 ===
=== 컬럼 생성/삭제 ===
=== 컬럼 검색 ===
==== 계정 ====
=== 생성/삭제/비밀번호 변경 ===
''USER'' 계정을 생성하면서 암호를 ''PASSWORD''로 설정하는 경우 MySQL 콘솔에서 다음과 같이 입력한다.
CREATE USER 'USER'@'localhost' IDENTIFIED BY 'PASSWORD';
FLUSH PRIVILEGES;
''USER'' 계정을 삭제하려면 MySQL 콘솔에서 다음과 같이 입력한다.
DROP USER 'USER'@'localhost';
FLUSH PRIVILEGES;
''USER'' 계정의 암호를 ''NEWPASSWORD''로 변경하려면 MySQL 콘솔에서 다음과 같이 입력한다.
SET PASSWORD FOR 'USER'@'localhost' = PASSWORD('NEWPASSWORD');
FLUSH PRIVILEGES;
- 또는 -
UPDATE mysql.user SET Password=PASSWORD('NEWPASSWORD') WHERE User='USER' AND Host='localhost';
FLUSH PRIVILEGES;
=== 권한 설정 ===
''USER'' 계정이 ''TEST'' 데이터베이스 안의 ''TESTTABLE'' 테이블에 모든 권한을 갖도록 설정하려면 MySQL 콘솔에서 다음과 같이 입력한다.
GRANT ALL PRIVILEGES ON TEST.TESTTABLE TO 'USER'@'localhost';
FLUSH PRIVILEGES;
''USER'' 계정이 ''TEST'' 데이터베이스 안의 ''TESTTABLE'' 테이블에 대해 가진 모든 권한을 취소하려면 MySQL 콘솔에서 다음과 같이 입력한다.
REVOKE ALL PRIVILEGES ON TEST.TESTTABLE TO 'USER'@'localhost';
FLUSH PRIVILEGES;
===== 문제해결 =====
==== 접속 장애 ====
==== 인코딩 에러 ====
''TEST'' 테이블의 인코딩을 확인하려면 MySQL 콘솔에서 다음과 같이 입력한다.
show create tables TEST;
- 또는 -
select * from TEST limit 1;
- 또는 -
show full columns from TEST;