> 데이터 베이스 > MySQL 튜토리얼 > 덤프하고 다시 가져오지 않고 InnoDB 테이블로 MySQL 데이터베이스 이름을 바꾸는 방법은 무엇입니까?

덤프하고 다시 가져오지 않고 InnoDB 테이블로 MySQL 데이터베이스 이름을 바꾸는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-12-14 11:52:10
원래의
880명이 탐색했습니다.

How to Rename a MySQL Database with InnoDB Tables Without Dumping and Re-importing?

InnoDB 테이블용 MySQL 데이터베이스 이름 바꾸기

대량 데이터베이스를 덤프하고 다시 가져오는 대신 직접 이름을 바꿀 수도 있습니다. RENAME 구문은 권장되지 않지만 InnoDB 테이블에 대한 보다 안정적인 접근 방식이 있습니다.

단계:

  1. 원하는 이름으로 비어 있는 새 데이터베이스를 만듭니다.
  2. 원본 데이터베이스의 각 테이블에 대해 다음을 실행합니다. 명령:
RENAME TABLE old_db.table TO new_db.table;
로그인 후 복사

프로세스 스크립팅:

편의를 위해 쉘 스크립팅을 사용하여 이름 바꾸기를 자동화합니다. 프로세스:

mysql -u username -ppassword old_db -sNe 'show tables' | while read table; \ 
    do mysql -u username -ppassword -sNe "rename table old_db.$table to new_db.$table"; done
로그인 후 복사

또는:

for table in `mysql -u root -ppassword -s -N -e "use old_db;show tables from old_db;"`; do mysql -u root -ppassword -s -N -e "use old_db;rename table old_db.$table to new_db.$table;"; done;
로그인 후 복사

참고:

  • 데이터베이스가 비밀번호가 아닌 경우 비밀번호 부분을 제거하세요. protected.
  • 트리거는 이 방법을 사용하여 테이블을 이동하는 것을 방지합니다. 대신 복제를 고려해 보십시오.
  • 나중에 mysqldump -R old_db |를 사용하여 저장 프로시저를 복사할 수 있습니다. mysql new_db.

위 내용은 덤프하고 다시 가져오지 않고 InnoDB 테이블로 MySQL 데이터베이스 이름을 바꾸는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿