동일한 인스턴스 내에서 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!