본문 바로가기

기타

[QnA] MySQL DB 이름 바꾸는 쿼리문

반응형

 

 

 

 

  데이터베이스의 이름을 바꾸는 쿼리문이 있나요?


 

 

 

 

 

데이터베이스의 이름을 바꾸는 쿼리문(RENAME DATABASE)은 
MySQL 5.1.23에서 제거되었습니다.
대신 3가지 방법이 있습니다.
 
1. 새 데이터베이스를 만들고 새 데이터베이스로 이전 데이터베이스의 모든 테이블의 이름을 변경 후 이전 데이터베이스 삭제
 
Create database new_db_name;
RENAME TABLE db_name.table1 TO new_db_name, db_name.table2 TO new_db_name;
DROP database db_name;
 
2. 리눅스 쉘에서 mysqldump를 사용하여 이전 데이터베이스를 백업한 뒤 MySQL 유틸리티를 사용하여 새 데이터베이스에 복원 마지막으로 이전 데이터베이스 삭제
 
mysqldump -uxxxx -pxxxx -h xxxx db_name > db_name_dump.sql
mysql -uxxxx -pxxxx -h xxxx -e "CREATE DATABASE new_db_name"
mysql -uxxxx -pxxxx -h xxxx new_db_name < db_name_dump.sql
mysql -uxxxx -pxxxx -h xxxx -e "DROP DATABASE db_name"
 
3. 모든 테이블의 스토리지 엔진이 MyISAM일 경우
1) MySQL 서버 중지
2) 데이터베이스 폴더명 변경
3) MySQL 서버 시작

 

반응형