====== 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;