MySQL에서 procedure와 function을 백업하려면 어떻게 해야 하나요?
💡 요약 정리
- MySQL 백업은 기본적으로 mysqldump 명령을 사용합니다
- 기본 mysqldump는 trigger는 백업하지만 procedure와 function은 백업하지 않습니다
- --routines 옵션 사용 시 procedure와 function까지 모두 백업됩니다
- procedure/function/trigger만 백업하려면 --no-create-info --no-data 옵션을 사용합니다
MySQL에서 기본적으로 DUMP를 하기 위해서는 mysqldump를 사용합니다.
[root@localhost ~]# mysqldump
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
[root@localhost ~]# mysqldump [옵션] dbname > 백업할 파일이름
이렇게 하면 trigger는 백업이 되지만 stored procedure와 function은 백업이 되지 않습니다.
-routines - FALSE by default , -triggers - TRUE by default
[root@localhost ~]# mysqldump --help | grep rou
The following groups are read: mysqldump client
--add-locks Add locks around INSERT statements.
-R, --routines Dump stored routines (functions and procedures).
routines FALSE
procedure와 function 까지 모두 백업하는 방법
다음과 같이 사용해야합니다.
[root@localhost ~]# mysqldump --routines -u유저이름 -p패스워드 디비이름 > 백업할 파일이름
procedure function trigger만 백업하는 방법
[root@tvpbackup-001 ~]# mysqldump --routines --no-create-info --no-data --no-create-db --skip-opt 데이터베이스이름 > 백업할 파일이름
문제가 해결되지 않았나요?
궁금하신 사항은 언제든지 1:1 문의게시판으로 문의해 주세요.
문의 시 포함 정보:
- 카페24 아이디
- 서비스 ID: 서버호스팅 서비스 ID
- 서버 OS: CentOS / Ubuntu 등
- MySQL 버전: mysql --version 명령 실행 결과
- 백업 명령: 사용한 mysqldump 명령어
- 에러 메시지: 백업 실행 시 발생한 에러
- 문의 내용: MySQL 백업 관련 문의 사항