반응형
MARIA DB도 mysqldump로 백업이 가능하다.
https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html
https://mariadb.com/kb/en/mariadb-dumpmysqldump/
Usage
기본 문법 basic Invocation syntax (export)
# one or more tables backup
# 하나 또는 여러개의 테이블
mysqldump [options] db_name [tbl_name ...]
# one or more complete databases backup
# 하나 또는 여러개의 데이터베이스
mysqldump [options] --databases db_name ...
# all database server
# DB의 모든 정보
mysqldump [options] --all-databases
# only mariadb
# Dump the database's system tables in a logical form
mysqldump [options] --system=[option_list]
덤프파일 로드 basic dumpfile load syntax
# localhost dumpfile load
mysql db_name < backup-file.sql
mysql -e "source /path-to-backup/backup-file.sql" db_name
# copy to another mysql server
# 다른 mysql server에 데이터 copy 하기
mysqldump --opt db_name | mysql --host=remote_host -C db_name
자주 사용하는 옵션 예시 Examples of frequently used option syntax
# one database all data
mysqldump -u [username] -p [password] [다른 옵션] db_name> dumpFileName.sql
# one
mysqldump -u [username] -p [password] [기타 옵션] db_name [tbl_name1 tbl_name2 tbl_name2 ...]> dumpFileName.sql /// 하나 이상의 테이블을 백업하려면
mysqldump -u [username] -p [password] [다른 옵션들] --databases db_name1 db_name2 db_name3 ...> dumpFileName.sql /// 하나 이상의 완전한 데이터베이스 백업하기
mysqldump -u [username] -p [password] [다른 옵션들] --all-databases> dumpFileName.sql /// 전체 MySQL 서버 백업하기
mysqldumpOption
https://dev.mysql.com/doc/refman/8.0/en/mysqldump.html#mysqldump-option-summary
https://mariadb.com/kb/en/mariadb-dumpmysqldump/#options
Option Name | Description | 설명 | Introduced | Deprecated |
---|---|---|---|---|
--add-drop-database | Add DROP DATABASE statement before each CREATE DATABASE statement | 각 CREATE DATABASE 문 앞에 DROP DATABASE 문 추가 | ||
--add-drop-table | Add DROP TABLE statement before each CREATE TABLE statement | 각 CREATE TABLE 문 앞에 DROP TABLE 문 추가 | ||
--add-drop-trigger | Add DROP TRIGGER statement before each CREATE TRIGGER statement | 각 CREATE TRIGGER 문 앞에 DROP TRIGGER 문 추가 | ||
--add-locks | Surround each table dump with LOCK TABLES and UNLOCK TABLES statements | 각 테이블 덤프를 LOCK TABLES 및 UNLOCK TABLES 문으로 묶습니다. | ||
--all-databases | Dump all tables in all databases | 모든 데이터베이스의 모든 테이블 덤프 | ||
--allow-keywords | Allow creation of column names that are keywords | 키워드인 열 이름 생성 허용 | ||
--apply-replica-statements | Include STOP REPLICA prior to CHANGE REPLICATION SOURCE TO statement and START REPLICA at end of output | CHANGE REPLICATION SOURCE TO 문 앞에 STOP REPLICA를 포함하고 출력 끝에 START REPLICA를 포함합니다. | 8.0.26 | |
--apply-slave-statements | Include STOP SLAVE prior to CHANGE MASTER statement and START SLAVE at end of output | CHANGE MASTER 문 앞에 STOP SLAVE를 포함하고 출력 끝에 START SLAVE를 포함합니다. | 8.0.26 | |
--bind-address | Use specified network interface to connect to MySQL Server | 지정된 네트워크 인터페이스를 사용하여 MySQL 서버에 연결 | ||
--character-sets-dir | Directory where character sets are installed | 문자 집합이 설치된 디렉토리 | ||
--column-statistics | Write ANALYZE TABLE statements to generate statistics histograms | ANALYZE TABLE 문을 작성하여 통계 히스토그램 생성 | ||
--comments | Add comments to dump file | 덤프 파일에 주석 추가 | ||
--compact | Produce more compact output | 보다 컴팩트한 출력 생성 | ||
--compatible | Produce output that is more compatible with other database systems or with older MySQL servers | 다른 데이터베이스 시스템 또는 이전 MySQL 서버와 더 호환되는 출력 생성 | ||
--complete-insert | Use complete INSERT statements that include column names | 열 이름을 포함하는 완전한 INSERT 문 사용 | ||
--compress | Compress all information sent between client and server | 클라이언트와 서버 간에 전송되는 모든 정보 압축 | 8.0.18 | |
--compression-algorithms | Permitted compression algorithms for connections to server | 서버 연결에 허용되는 압축 알고리즘 | 8.0.18 | |
--create-options | Include all MySQL-specific table options in CREATE TABLE statements | CREATE TABLE 문에 모든 MySQL 관련 테이블 옵션 포함 | ||
--databases | Interpret all name arguments as database names | 모든 이름 인수를 데이터베이스 이름으로 해석 | ||
--debug | Write debugging log | 디버깅 로그 쓰기 | ||
--debug-check | Print debugging information when program exits | 프로그램 종료 시 디버깅 정보 인쇄 | ||
--debug-info | Print debugging information, memory, and CPU statistics when program exits | 프로그램 종료 시 디버깅 정보, 메모리 및 CPU 통계 인쇄 | ||
--default-auth | Authentication plugin to use | 사용할 인증 플러그인 | ||
--default-character-set | Specify default character set | 기본 문자 집합 지정 | ||
--defaults-extra-file | Read named option file in addition to usual option files | 일반적인 옵션 파일 외에 명명된 옵션 파일 읽기 | ||
--defaults-file | Read only named option file | 명명된 옵션 파일 읽기 전용 | ||
--defaults-group-suffix | Option group suffix value | 옵션 그룹 접미사 값 | ||
--delete-master-logs | On a replication source server, delete the binary logs after performing the dump operation | 복제 소스 서버에서 덤프 작업 수행 후 바이너리 로그 삭제 | 8.0.26 | |
--delete-source-logs | On a replication source server, delete the binary logs after performing the dump operation | 복제 소스 서버에서 덤프 작업 수행 후 바이너리 로그 삭제 | 8.0.26 | |
--disable-keys | For each table, surround INSERT statements with statements to disable and enable keys | 각 테이블에 대해 INSERT 문을 키를 비활성화 및 활성화하는 문으로 묶습니다. | ||
--dump-date | Include dump date as "Dump completed on" comment if --comments is given | --comments가 제공된 경우 덤프 날짜를 "Dump completed on" 주석으로 포함합니다. | ||
--dump-replica | Include CHANGE REPLICATION SOURCE TO statement that lists binary log coordinates of replica's source | 복제본 소스의 바이너리 로그 좌표를 나열하는 CHANGE REPLICATION SOURCE TO 문 포함 | 8.0.26 | |
--dump-slave | Include CHANGE MASTER statement that lists binary log coordinates of replica's source | 복제본 소스의 바이너리 로그 좌표를 나열하는 CHANGE MASTER 문 포함 | 8.0.26 | |
--enable-cleartext-plugin | Enable cleartext authentication plugin | 일반 텍스트 인증 플러그인 사용 | ||
--events | Dump events from dumped databases | 덤프된 데이터베이스의 덤프 이벤트 | ||
--extended-insert | Use multiple-row INSERT syntax | 다중 행 INSERT 구문 사용 | ||
--fields-enclosed-by | This option is used with the --tab option and has the same meaning as the corresponding clause for LOAD DATA | 이 옵션은 --tab 옵션과 함께 사용되며 LOAD DATA에 대한 해당 절과 동일한 의미를 갖습니다. | ||
--fields-escaped-by | This option is used with the --tab option and has the same meaning as the corresponding clause for LOAD DATA | 이 옵션은 --tab 옵션과 함께 사용되며 LOAD DATA에 대한 해당 절과 동일한 의미를 갖습니다. | ||
--fields-optionally-enclosed-by | This option is used with the --tab option and has the same meaning as the corresponding clause for LOAD DATA | 이 옵션은 --tab 옵션과 함께 사용되며 LOAD DATA에 대한 해당 절과 동일한 의미를 갖습니다. | ||
--fields-terminated-by | This option is used with the --tab option and has the same meaning as the corresponding clause for LOAD DATA | 이 옵션은 --tab 옵션과 함께 사용되며 LOAD DATA에 대한 해당 절과 동일한 의미를 갖습니다. | ||
--flush-logs | Flush MySQL server log files before starting dump | 덤프를 시작하기 전에 MySQL 서버 로그 파일 플러시 | ||
--flush-privileges | Emit a FLUSH PRIVILEGES statement after dumping mysql database | mysql 데이터베이스를 덤프한 후 FLUSH PRIVILEGES 문을 내보냅니다. | ||
--force | Continue even if an SQL error occurs during a table dump | 테이블 덤프 중 SQL 오류가 발생하더라도 계속 | ||
--get-server-public-key | Request RSA public key from server | 서버에서 RSA 공개 키 요청 | ||
--help | Display help message and exit | 도움말 메시지 표시 및 종료 | ||
--hex-blob | Dump binary columns using hexadecimal notation | 16진수 표기법을 사용하여 이진 열 덤프 | ||
--host | Host on which MySQL server is located | MySQL 서버가 위치한 호스트 | ||
--ignore-error | Ignore specified errors | 지정된 오류 무시 | ||
--ignore-table | Do not dump given table | 주어진 테이블을 덤프하지 마십시오 | ||
--include-master-host-port | Include MASTER_HOST/MASTER_PORT options in CHANGE MASTER statement produced with --dump-slave | --dump-slave로 생성된 CHANGE MASTER 문에 MASTER_HOST/MASTER_PORT 옵션 포함 | 8.0.26 | |
--include-source-host-port | Include SOURCE_HOST and SOURCE_PORT options in CHANGE REPLICATION SOURCE TO statement produced with --dump-replica | --dump-replica로 생성된 CHANGE REPLICATION SOURCE TO 문에 SOURCE_HOST 및 SOURCE_PORT 옵션 포함 | 8.0.26 | |
--insert-ignore | Write INSERT IGNORE rather than INSERT statements | INSERT 문보다 INSERT IGNORE를 작성하십시오. | ||
--lines-terminated-by | This option is used with the --tab option and has the same meaning as the corresponding clause for LOAD DATA | 이 옵션은 --tab 옵션과 함께 사용되며 LOAD DATA에 대한 해당 절과 동일한 의미를 갖습니다. | ||
--lock-all-tables | Lock all tables across all databases | 모든 데이터베이스에서 모든 테이블 잠금 | ||
--lock-tables | Lock all tables before dumping them | 덤프하기 전에 모든 테이블을 잠급니다. | ||
--log-error | Append warnings and errors to named file | 명명된 파일에 경고 및 오류 추가 | ||
--login-path | Read login path options from .mylogin.cnf | .mylogin.cnf에서 로그인 경로 옵션 읽기 | ||
--master-data | Write the binary log file name and position to the output | 바이너리 로그 파일 이름과 위치를 출력에 씁니다. | 8.0.26 | |
--max-allowed-packet | Maximum packet length to send to or receive from server | 서버와 송수신할 최대 패킷 길이 | ||
--net-buffer-length | Buffer size for TCP/IP and socket communication | TCP/IP 및 소켓 통신을 위한 버퍼 크기 | ||
--network-timeout | Increase network timeouts to permit larger table dumps | 더 큰 테이블 덤프를 허용하도록 네트워크 시간 초과를 늘립니다. | ||
--no-autocommit | Enclose the INSERT statements for each dumped table within SET autocommit = 0 and COMMIT statements | SET autocommit = 0 및 COMMIT 문 내에서 각 덤프된 테이블에 대한 INSERT 문을 묶습니다. | ||
--no-create-db | Do not write CREATE DATABASE statements | CREATE DATABASE 문을 작성하지 마십시오. | ||
--no-create-info | Do not write CREATE TABLE statements that re-create each dumped table | 덤프된 각 테이블을 다시 생성하는 CREATE TABLE 문을 작성하지 마십시오. | ||
--no-data | Do not dump table contents | 테이블 내용을 덤프하지 마십시오. | ||
--no-defaults | Read no option files | 옵션 파일을 읽지 않음 | ||
--no-set-names | Same as --skip-set-charset | --skip-set-charset과 동일 | ||
--no-tablespaces | Do not write any CREATE LOGFILE GROUP or CREATE TABLESPACE statements in output | 출력에 CREATE LOGFILE GROUP 또는 CREATE TABLESPACE 문을 쓰지 마십시오. | ||
--opt | Shorthand for --add-drop-table --add-locks --create-options --disable-keys --extended-insert --lock-tables --quick --set-charset | --add-drop-table --add-locks --create-options --disable-keys --extended-insert --lock-tables --quick --set-charset 의 약어 | ||
--order-by-primary | Dump each table's rows sorted by its primary key, or by its first unique index | 기본 키 또는 첫 번째 고유 인덱스별로 정렬된 각 테이블의 행을 덤프합니다. | ||
--password | Password to use when connecting to server | 서버 접속 시 사용할 비밀번호 | ||
--password1 | First multifactor authentication password to use when connecting to server | 서버에 연결할 때 사용할 첫 번째 다단계 인증 암호 | 8.0.27 | |
--password2 | Second multifactor authentication password to use when connecting to server | 서버에 연결할 때 사용할 두 번째 다단계 인증 암호 | 8.0.27 | |
--password3 | Third multifactor authentication password to use when connecting to server | 서버에 연결할 때 사용할 세 번째 다단계 인증 암호 | 8.0.27 | |
--pipe | Connect to server using named pipe (Windows only) | 명명된 파이프를 사용하여 서버에 연결(Windows만 해당) | ||
--plugin-dir | Directory where plugins are installed | 플러그인이 설치된 디렉토리 | ||
--port | TCP/IP port number for connection | 연결을 위한 TCP/IP 포트 번호 | ||
--print-defaults | Print default options | 기본 옵션 인쇄 | ||
--protocol | Transport protocol to use | 사용할 전송 프로토콜 | ||
--quick | Retrieve rows for a table from the server a row at a time | 한 번에 한 행씩 서버에서 테이블에 대한 행 검색 | ||
--quote-names | Quote identifiers within backtick characters | 백틱 문자 내의 인용 식별자 | ||
--replace | Write REPLACE statements rather than INSERT statements | INSERT 문보다 REPLACE 문을 작성하십시오. | ||
--result-file | Direct output to a given file | 주어진 파일로 직접 출력 | ||
--routines | Dump stored routines (procedures and functions) from dumped databases | 덤프된 데이터베이스에서 저장된 루틴(프로시저 및 함수) 덤프 | ||
--server-public-key-path | Path name to file containing RSA public key | RSA 공개 키가 포함된 파일의 경로 이름 | ||
--set-charset | Add SET NAMES default_character_set to output | 출력에 SET NAMES default_character_set 추가 | ||
--set-gtid-purged | Whether to add SET @@GLOBAL.GTID_PURGED to output | SET @@GLOBAL.GTID_PURGED를 출력에 추가할지 여부 | ||
--shared-memory-base-name | Shared-memory name for shared-memory connections (Windows only) | 공유 메모리 연결을 위한 공유 메모리 이름(Windows만 해당) | ||
--show-create-skip-secondary-engine | Exclude SECONDARY ENGINE clause from CREATE TABLE statements | CREATE TABLE 문에서 SECONDARY ENGINE 절 제외 | 8.0.18 | |
--single-transaction | Issue a BEGIN SQL statement before dumping data from server | 서버에서 데이터를 덤프하기 전에 BEGIN SQL 문을 실행하십시오. | ||
--skip-add-drop-table | Do not add a DROP TABLE statement before each CREATE TABLE statement | 각 CREATE TABLE 문 앞에 DROP TABLE 문을 추가하지 마십시오. | ||
--skip-add-locks | Do not add locks | 잠금을 추가하지 마십시오 | ||
--skip-comments | Do not add comments to dump file | 덤프 파일에 주석을 추가하지 마십시오. | ||
--skip-compact | Do not produce more compact output | 더 컴팩트한 출력을 생성하지 마십시오. | ||
--skip-disable-keys | Do not disable keys | 키를 비활성화하지 마십시오 | ||
--skip-extended-insert | Turn off extended-insert | 확장 삽입 끄기 | ||
--skip-opt | Turn off options set by --opt | --opt로 설정한 옵션 끄기 | ||
--skip-quick | Do not retrieve rows for a table from the server a row at a time | 한 번에 한 행씩 서버에서 테이블에 대한 행을 검색하지 마십시오. | ||
--skip-quote-names | Do not quote identifiers | 식별자를 인용하지 마십시오. | ||
--skip-set-charset | Do not write SET NAMES statement | SET NAMES 문을 작성하지 마십시오. | ||
--skip-triggers | Do not dump triggers | 트리거를 덤프하지 마십시오. | ||
--skip-tz-utc | Turn off tz-utc | tz-utc 끄기 | ||
--socket | Unix socket file or Windows named pipe to use | 사용할 Unix 소켓 파일 또는 Windows 명명된 파이프 | ||
--source-data | Write the binary log file name and position to the output | 바이너리 로그 파일 이름과 위치를 출력에 씁니다. | 8.0.26 | |
--ssl-ca | File that contains list of trusted SSL Certificate Authorities | 신뢰할 수 있는 SSL 인증 기관 목록이 포함된 파일 | ||
--ssl-capath | Directory that contains trusted SSL Certificate Authority certificate files | 신뢰할 수 있는 SSL 인증 기관 인증서 파일이 포함된 디렉토리 | ||
--ssl-cert | File that contains X.509 certificate | X.509 인증서가 포함된 파일 | ||
--ssl-cipher | Permissible ciphers for connection encryption | 연결 암호화에 허용되는 암호 | ||
--ssl-crl | File that contains certificate revocation lists | 인증서 해지 목록이 포함된 파일 | ||
--ssl-crlpath | Directory that contains certificate revocation-list files | 인증서 해지 목록 파일이 포함된 디렉토리 | ||
--ssl-fips-mode | Whether to enable FIPS mode on client side | 클라이언트 측에서 FIPS 모드를 활성화할지 여부 | ||
--ssl-key | File that contains X.509 key | X.509 키가 포함된 파일 | ||
--ssl-mode | Desired security state of connection to server | 원하는 서버 접속 보안 상태 | ||
--ssl-session-data | File that contains SSL session data | SSL 세션 데이터가 포함된 파일 | 8.0.29 | |
--ssl-session-data-continue-on-failed-reuse | Whether to establish connections if session reuse fails | 세션 재사용 실패 시 연결 설정 여부 | 8.0.29 | |
--tab | Produce tab-separated data files | 탭으로 구분된 데이터 파일 생성 | ||
--tables | Override --databases or -B option | --databases 또는 -B 옵션 재정의 | ||
--tls-ciphersuites | Permissible TLSv1.3 ciphersuites for encrypted connections | 암호화된 연결에 허용되는 TLSv1.3 암호 제품군 | 8.0.16 | |
--tls-version | Permissible TLS protocols for encrypted connections | 암호화된 연결에 허용되는 TLS 프로토콜 | ||
--triggers | Dump triggers for each dumped table | 각 덤프 테이블에 대한 덤프 트리거 | ||
--tz-utc | Add SET TIME_ZONE='+00:00' to dump file | 덤프 파일에 SET TIME_ZONE='+00:00' 추가 | ||
--user | MySQL user name to use when connecting to server | 서버에 연결할 때 사용할 MySQL 사용자 이름 | ||
--verbose | Verbose mode | 상세 모드 | ||
--version | Display version information and exit | 버전 정보 표시 및 종료 | ||
--where | Dump only rows selected by given WHERE condition | 주어진 WHERE 조건에 의해 선택된 행만 덤프 | ||
--xml | Produce XML output | XML 출력 생성 | ||
--zstd-compression-level | Compression level for connections to server that use zstd compression | zstd 압축을 사용하는 서버 연결을 위한 압축 수준 | 8.0.18 |
반응형
'DB(SQL) > mysql|maria' 카테고리의 다른 글
[Mariadb] Window functions not working in ONLY_FULL_GROUP_BY mode II (0) | 2022.05.20 |
---|---|
(펌)MySQL 쓰면서 하지 말아야 할 것 17가지 (0) | 2022.05.04 |
[MARIADB] Insert into same table trigger mysql (0) | 2022.02.16 |
[mariadb] install mariadb on ubuntu 18.04 (0) | 2022.01.26 |
[DB] mariadb dblink FEDERATED / connect (0) | 2021.10.27 |