Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
mysql [2015/04/02 14:09] 진보넷 |
mysql [2015/04/02 15:31] (current) 진보넷 [계정] |
||
---|---|---|---|
Line 12: | Line 12: | ||
=== 생성/삭제 === | === 생성/삭제 === | ||
+ | |||
+ | ''TEST'' 데이터베이스를 생성하는 경우 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | CREATE DATABASE TEST; | ||
+ | </code> | ||
+ | |||
+ | ''TEST'' 데이터베이스를 삭제하는 경우 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | DROP DATABASE TEST; | ||
+ | </code> | ||
=== 백업/복구 === | === 백업/복구 === | ||
+ | ''USER'' 계정으로 모든 데이터베이스를 백업해서 ''BACKUP.sql'' 파일로 저장하는 경우 쉘에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code bash> | ||
+ | mysqldump -u USER -p --all-databases > BACKUP.sql | ||
+ | </code> | ||
+ | |||
+ | ''USER'' 계정으로 ''TEST'' 데이터베이스를 백업해서 ''BACKUP.sql'' 파일로 저장하는 경우 쉘에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code bash> | ||
+ | mysqldump -u USER -p --databases TEST > BACKUP.sql | ||
+ | |||
+ | - 또는 - | ||
+ | |||
+ | mysqldump -u USER -p TEST > BACKUP.sql | ||
+ | </code> | ||
+ | |||
+ | ''USER'' 계정으로 ''BACKUP.sql'' 파일로부터 모든 데이터베이스를 복구하는 경우 쉘에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code bash> | ||
+ | mysql -u USER -p < BACKUP.sql | ||
+ | </code> | ||
+ | |||
+ | ''USER'' 계정으로 ''BACKUP.sql'' 파일로부터 ''TEST'' 데이터베이스를 복구하는 경우 쉘에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code bash> | ||
+ | mysql -u USER -p TEST < BACKUP.sql | ||
+ | </code> | ||
+ | |||
+ | 또는, MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | source BACKUP.sql | ||
+ | </code> | ||
==== 테이블/컬럼 ==== | ==== 테이블/컬럼 ==== | ||
Line 27: | Line 72: | ||
==== 계정 ==== | ==== 계정 ==== | ||
- | === 생성/삭제 === | + | === 생성/삭제/비밀번호 변경 === |
+ | |||
+ | ''USER'' 계정을 생성하면서 암호를 ''PASSWORD''로 설정하는 경우 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | CREATE USER 'USER'@'localhost' IDENTIFIED BY 'PASSWORD'; | ||
+ | FLUSH PRIVILEGES; | ||
+ | </code> | ||
+ | |||
+ | ''USER'' 계정을 삭제하려면 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | DROP USER 'USER'@'localhost'; | ||
+ | FLUSH PRIVILEGES; | ||
+ | </code> | ||
+ | |||
+ | ''USER'' 계정의 암호를 ''NEWPASSWORD''로 변경하려면 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code 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; | ||
+ | </code> | ||
=== 권한 설정 === | === 권한 설정 === | ||
+ | ''USER'' 계정이 ''TEST'' 데이터베이스 안의 ''TESTTABLE'' 테이블에 모든 권한을 갖도록 설정하려면 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | GRANT ALL PRIVILEGES ON TEST.TESTTABLE TO 'USER'@'localhost'; | ||
+ | FLUSH PRIVILEGES; | ||
+ | </code> | ||
+ | |||
+ | ''USER'' 계정이 ''TEST'' 데이터베이스 안의 ''TESTTABLE'' 테이블에 대해 가진 모든 권한을 취소하려면 MySQL 콘솔에서 다음과 같이 입력한다. | ||
+ | |||
+ | <code mysql> | ||
+ | REVOKE ALL PRIVILEGES ON TEST.TESTTABLE TO 'USER'@'localhost'; | ||
+ | FLUSH PRIVILEGES; | ||
+ | </code> | ||
===== 문제해결 ===== | ===== 문제해결 ===== | ||
Line 37: | Line 121: | ||
==== 인코딩 에러 ==== | ==== 인코딩 에러 ==== | ||
- | **테이블 인코딩을 확인하는 방법** | + | ''TEST'' 테이블의 인코딩을 확인하려면 MySQL 콘솔에서 다음과 같이 입력한다. |
+ | |||
+ | <code mysql> | ||
+ | show create tables TEST; | ||
+ | |||
+ | - 또는 - | ||
+ | |||
+ | select * from TEST limit 1; | ||
+ | |||
+ | - 또는 - | ||
- | * ''show create tables [TABLENAME]'' | + | show full columns from TEST; |
- | * ''select * from [TABLENAME] limit 1'' | + | </code> |
- | * ''show full columns form [TABLENAME]'' | + |