개발자

[MariaDB] 백업&복구

쿠카곰돌이 2020. 3. 17. 11:51
반응형

1. MYSQLDUMP(ALL-DATABASE)

 #mysqldump -uroot -pmaria --all-databases > all_database.sql

   mysqldump -u[아이디] -p[패스워드] [옵션] > [저장파일명]

 

2. MYSQLDUMP(ONE-DATABASE)

 #mysqldump -uroot -pmaria test > test_database.sql

   mysqldump -u[아이디] -p[패스워드] [데이터베이스명]> [저장파일명]

 

3. MYSQLDUMP(ONE-TALBE)

  # mysqldump -uroot -pmaria testTEST>test_table.sql

    mysqldump -u[아이디] -p[패스워드] [데이터베이스명][테이블명] > [저장파일명]

 

4. MYSQLDUMP(테이블 구조 덤프)

  #mysqldump -uroot -pmaria --no-data test TEST > test.sql

    mysqldump -u[아이디] -p[패스워드] --no-data [데이터베이스명] [테이블명] > [저장파일명]

 

5. MYSQLDUMP(데이터 덤프)

  #mysqldump -uroot -pmaria --no-create_db test TEST > test_data.sql

    mysqldump -u[아이디] -p[패스워드] no-create-db [데이터베이스명] [테이블명] > [저장파일명]

 

옵션)

-A, --all-databases : 모든 DB를 덤프 
--add-locks : 덤프 전에 lock 덤프 후에 unlock 
--add-drop-table : 덤프이후에 출력물의 앞에 drop table명령 추가 복구할 때 사용키 위해서 
-B, --databases : 여러 DB를 동시에 덤프 할 때 사용 
-f, --force : 에러를 무시 
-h, --host : 지정한 호스트의 데이터를 덤프 
-t, --no-create-info : 데이터만 덤프 
-d, --no-data : 데이터를 제외하고 스키마만 덤프 
-p : 사용자의 암호를 지정 
-P : 포트번호 지정 
-u : 사용자명 지정

 

전체 백업 후에 테스트 테이블 삭제

 - 전체 백업

[root@MariaDB-Master backup]# mysqldump -uroot-pmaria --all-databases > all_database.sql

[root@MariaDB-Master backup]# ls -la

-rw-r--r--. 1 root root 32783491 Oct 17 06:42all_database.sql

 

- 테이블 건수 확인

[root@MariaDB-Master backup]# mysql -u root -ptest

Enter password:

Reading table information for completion of tableand column names

You can turn off this feature to get a quickerstartup with -A

 

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 24

Server version: 10.0.4-MariaDB MariaDB Server

 

MariaDB [test]> select count(*) from TEST;

+----------+

| count(*) |

+----------+

|  1000000 |

+----------+

1 row in set (0.34 sec)

 

 - 데이블 삭제

MariaDB [mysql]> drop table test.TEST;

Query OK, 0 rows affected (0.06 sec)

 

MariaDB [mysql]> select count(*) from test.TEST;

ERROR 1146 (42S02): Table 'test.TEST' doesn't exist  -- 테이블이 삭제 되었습니다.

 

 

 데이터 복구

 

1. MYSQLDUMP(REVERBERY)

  #mysql -uroot -pmaria test < all_database.sql

 

    mysqldump -u[아이디] -p[패스워드] [데이터베이스명]< [저장파일명]

 

)

 - 삭제 된 테이블 복원

[root@MariaDB-Master backup]# mysql -uroot-pmaria test < all_database.sql

[root@MariaDB-Master backup]# mysql -u root -pmysql

Enter password:

Reading table information for completion of tableand column names

You can turn off this feature to get a quickerstartup with -A

 

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MariaDB connection id is 26

Server version: 10.0.4-MariaDB MariaDB Server

 

Copyright (c) 2000, 2013, Oracle, Monty Program Aband others.

 

Type 'help;' or '\h' for help. Type '\c' to clearthe current input statement.

 

MariaDB [mysql]> select count(*) from test.TEST;

+----------+

| count(*) |

+----------+

|  1000000 |

+----------+

1 row in set (0.34 sec)

반응형

'개발자' 카테고리의 다른 글

[MariaDB]기본함수  (0) 2020.03.17
[MariaDB] DB 생성 및 사용자 생성  (0) 2020.03.17
[MariaDB] 설정 정보 확인  (0) 2020.03.17
my.cnf 설정값  (0) 2020.03.17
MariaDB :: 데이터베이스  (0) 2020.03.17