외부 스크립트를 사용하지 않고 동일한 인스턴스 내에서 MySQL 데이터베이스를 복제하는 방법은 무엇입니까?

Susan Sarandon
풀어 주다: 2024-11-01 16:38:02
원래의
244명이 탐색했습니다.

How to Clone a MySQL Database Within the Same Instance Without Using an External Script?

동일한 인스턴스 내에서 MySQL 데이터베이스 복제: 대체 접근 방식

동일한 인스턴스에서 MySQL 데이터베이스의 복사본을 생성하는 것이 필수적인 경우가 많습니다. 개발 또는 테스트 목적으로. 데이터베이스를 SQL 스크립트로 덤프한 다음 가져오는 것이 일반적인 방법이지만 중간 파일이 필요합니다. 이 문서에서는 외부 스크립트 없이 데이터베이스를 복제하는 보다 직접적인 방법을 살펴봅니다.

MySQL 문서에 나와 있듯이 다음 명령을 사용하여 데이터베이스 덤프를 MySQL 클라이언트로 직접 파이프할 수 있습니다.

mysqldump --routines --triggers db_name | mysql new_db_name
로그인 후 복사

이 명령은 db_name에서 데이터베이스 구조, 데이터, 루틴 및 트리거를 내보내고 new_db_name으로 직접 가져옵니다. 데이터베이스를 파일로 덤프한 다음 가져오는 것보다 더 간단하고 효율적인 접근 방식입니다.

MyISAM 테이블을 사용하는 경우 테이블 파일을 직접 복사하는 것을 고려할 수 있습니다. 그러나 복사된 파일이 새 데이터베이스 내에서 적절하게 초기화 및 구성되지 않으면 데이터 손상으로 이어질 수 있으므로 이는 권장되지 않습니다.

또한 mysqldump 및 mysql 명령 모두 다음과 같은 옵션을 사용하여 연결 세부 정보를 지정할 수 있습니다. 사용자 이름은 -u이고 비밀번호는 --password=입니다. 이렇게 하면 대화형으로 자격 증명을 제공할 필요 없이 데이터베이스에 대한 보안 연결이 보장됩니다.

예를 들어, 지정된 사용자 이름과 비밀번호를 사용하여 new_db라는 이름의 Original_db 복제본을 생성하려면 다음 명령을 사용할 수 있습니다.

mysqldump -u username --password=password original_db | mysql -u username -p new_db
로그인 후 복사

이 명령을 실행하기 전에 new_db 데이터베이스가 없으면 생성해야 할 수도 있습니다. 이는 echo "create Database new_db_name" | 명령을 사용하여 수행할 수 있습니다. mysql -u 사용자 이름 -p.

위에 설명된 파이핑 기술을 활용하면 중간 파일 없이 동일한 인스턴스에서 MySQL 데이터베이스를 효율적으로 복제할 수 있어 보다 편리하고 안정적인 데이터베이스 복제 방법을 제공할 수 있습니다.

위 내용은 외부 스크립트를 사용하지 않고 동일한 인스턴스 내에서 MySQL 데이터베이스를 복제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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