1
mysql 덤프를 내보낼 때 모든 테이블 앞에 일부 텍스트를 추가 할 수 있습니까?MySQL 데이터베이스 내보내기에 테이블 이름 앞에
예를 들어 : 테이블이 chapters
라는 경우가
mysql 덤프를 내보낼 때 모든 테이블 앞에 일부 텍스트를 추가 할 수 있습니까?MySQL 데이터베이스 내보내기에 테이블 이름 앞에
예를 들어 : 테이블이 chapters
라는 경우가
old_chapters
이 스키마의 복잡도에 따라가되도록 난 당신이 신중하게 제작 된 sed
명령을 사용하여이 작업을 수행 할 수 있습니다 그것에 old_
씁니다 원하는 모든 테이블 참조를 찾고 "old_"로 테이블 이름을 앞에 둡니다.
예를 들어,이 명령은 스키마와 데이터를 덤프하고 드롭에 old_ 접두사를 추가/잠금뿐만 아니라 테이블 문을 생성/테이블을 변경하고 삽입 문 :
mysqldump your_schema | sed -e 's/DROP TABLE IF EXISTS `/DROP TABLE IF EXISTS `old_/' -e 's/CREATE TABLE `/CREATE TABLE `old_/' -e 's/INSERT INTO `/INSERT INTO `old_/' -e 's/LOCK TABLES `/LOCK TABLES `old_/' -e 's/ALTER TABLE `/ALTER TABLE `old_/'
그러나, 명령 테이블 참조 다음과 같은 유형의에 대한 테이블 접두사를 추가하지 않습니다
덤프 파일을 검색하고 대체 할 수는 없습니까? – liquorvicar
해당 덤프에는 내용도 포함되어 있으며 크기가 매우 큽니다 (대부분의 텍스트 편집기를 사용하지 않습니다). 또한 용어는 콘텐츠에도 존재하기 때문에 단순한 대체가 매우 까다 롭습니다. – kylex
관련 테이블을 복사 한 다음 덤프에서 원래 테이블을 무시하는 방법은 어떻습니까? – liquorvicar