MySQL 덤프에서 DEFINER 절 제거
MySQL 덤프에는 "DEFINER=root와 같은 CREATE VIEW 및 CREATE PROCEDURE 문 내에 DEFINER 절이 포함되는 경우가 많습니다. @localhost". 이러한 조항은 특정 시나리오에서 바람직하지 않을 수 있습니다. 이 문서에서는 MySQL 덤프 파일에서 이러한 절을 제거하는 방법을 살펴봅니다.
해결책:
텍스트 편집기에서 덤프 파일을 열고 전역 검색 및 바꾸기를 수행합니다. "DEFINER=
다음 명령으로 Perl을 사용하여 덤프 파일을 편집합니다.
perl -p -i.bak -e "s/DEFINER=\`\w.*\`@\`\d[0-3].*[0-3]\`//g" mydatabase.sql
이렇게 하면 덤프 파일에서 모든 DEFINER 절이 제거되고 ".bak" 확장자를 가진 백업이 생성됩니다.
sed를 통해 mysqldump의 출력을 파이프하여 DEFINER 절을 제거합니다.
mysqldump ... | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > triggers_backup.sql
이 명령은 DEFINER 절이 제거된 "triggers_backup.sql"이라는 새 덤프 파일을 생성합니다.
위 내용은 MySQL 덤프에서 DEFINER 절을 제거하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!