웹사이트 검색

Linux에서 MySQL/MariaDB 데이터베이스를 백업하고 복원하는 방법


이 문서에서는 mysqldump 명령을 사용하여 MySQL/MariaDB 데이터베이스의 다양한 백업 작업을 수행하는 방법에 대한 몇 가지 실제 예를 보여주고 다음 명령을 사용하여 이를 복원하는 방법도 살펴보겠습니다. Linuxmysqlmysqlimport 명령.

mysqldump는 명령줄 클라이언트 프로그램으로, 로컬 또는 원격 MySQL 데이터베이스 또는 백업용 데이터베이스 컬렉션을 단일 플랫 파일로 덤프하는 데 사용됩니다.

우리는 귀하가 관리자 권한으로 Linux 시스템에 이미 MySQL을 설치했으며 MySQL에 대한 지식이 어느 정도 있다고 가정합니다. .

MySQL이 설치되어 있지 않거나 MySQL에 노출된 적이 없다면 아래 문서를 읽어보세요.

  • RHEL 기반 배포판에 MySQL을 설치하는 방법
  • Rocky Linux 및 AlmaLinux에 MySQL을 설치하는 방법
  • 우분투 리눅스에 MySQL을 설치하는 방법
  • 데비안에 MySQL을 설치하는 방법
  • Linux에서 데이터베이스 관리를 위한 20가지 MySQL(Mysqladmin) 명령
  • 12가지 Linux용 MySQL/MariaDB 보안 모범 사례

Linux에서 MySQL 데이터베이스를 백업하는 방법은 무엇입니까?

MySQL 데이터베이스를 백업하려면 해당 데이터베이스가 데이터베이스 서버에 있어야 하며 해당 데이터베이스에 액세스할 수 있어야 합니다. 명령의 형식은 다음과 같습니다.

mysqldump -u [username] –p[password] [database_name] > [dump_file.sql]

해당 명령의 매개변수는 다음과 같습니다.

  • [사용자 이름]: 유효한 MySQL 사용자 이름입니다.
  • [password] : 사용자의 유효한 MySQL 비밀번호입니다.
  • [database_name] : 백업하려는 유효한 데이터베이스 이름입니다.
  • [dump_file.sql]: 생성하려는 백업 덤프 파일의 이름입니다.

단일 MySQL 데이터베이스를 백업하는 방법은 무엇입니까?

단일 데이터베이스를 백업하려면 다음과 같은 명령을 사용하십시오. 이 명령은 데이터가 포함된 데이터베이스 [rsyslog] 구조를 rsyslog.sql이라는 단일 덤프 파일에 덤프합니다.

mysqldump -u root -ptecmint rsyslog > rsyslog.sql

여러 MySQL 데이터베이스를 백업하는 방법은 무엇입니까?

여러 데이터베이스를 백업하려면 다음 명령을 실행하세요. 다음 예제 명령은 데이터베이스 [rsyslog, syslog] 구조 및 데이터를 rsyslog_syslog.sql이라는 단일 파일로 백업합니다.

mysqldump -u root -ptecmint --databases rsyslog syslog > rsyslog_syslog.sql

모든 MySQL 데이터베이스를 백업하는 방법은 무엇입니까?

모든 데이터베이스를 백업하려면 –all-database 옵션과 함께 다음 명령을 사용하십시오. 다음 명령은 구조 및 데이터와 함께 모든 데이터베이스를 all-databases.sql이라는 파일에 백업합니다.

mysqldump -u root -ptecmint --all-databases > all-databases.sql

MySQL 데이터베이스 구조만 백업하는 방법은 무엇입니까?

데이터 없이 데이터베이스 구조만 백업하려면 명령에 –no-data 옵션을 사용하세요. 아래 명령은 데이터베이스 [rsyslog] 구조rsyslog_structure.sql 파일로 내보냅니다.

mysqldump -u root -ptecmint -–no-data rsyslog > rsyslog_structure.sql

MySQL 데이터베이스 데이터만 백업하는 방법은 무엇입니까?

데이터베이스 구조가 없는 데이터를 백업하려면 명령과 함께 –no-create-info 옵션을 사용하세요. 이 명령은 데이터베이스 [rsyslog] 데이터 rsyslog_data.sql 파일로 가져옵니다.

mysqldump -u root -ptecmint --no-create-db --no-create-info rsyslog > rsyslog_data.sql

단일 데이터베이스 테이블을 백업하는 방법은 무엇입니까?

아래 명령을 사용하면 데이터베이스의 단일 테이블 또는 특정 테이블을 백업할 수 있습니다. 예를 들어, 다음 명령은 데이터베이스 wordpress에서 wp_posts 테이블의 백업만 가져옵니다.

mysqldump -u root -ptecmint wordpress wp_posts > wordpress_posts.sql

여러 데이터베이스 테이블을 백업하는 방법은 무엇입니까?

데이터베이스에서 여러 테이블 또는 특정 테이블을 백업하려면 각 테이블을 공간으로 구분하세요.

mysqldump -u root -ptecmint wordpress wp_posts wp_comments > wordpress_posts_comments.sql

원격 MySQL 데이터베이스를 백업하는 방법

아래 명령은 원격 서버 [172.16.25.126] 데이터베이스 [갤러리]의 백업을 로컬 서버로 가져옵니다.

mysqldump -h 172.16.25.126 -u root -ptecmint gallery > gallery.sql

MySQL 데이터베이스를 복원하는 방법은 무엇입니까?

위의 튜토리얼에서는 데이터베이스, 테이블, 구조 및 데이터만 백업하는 방법을 살펴보았습니다. 이제 다음 형식을 사용하여 복원하는 방법을 살펴보겠습니다.

# mysql -u [username] –p[password] [database_name] < [dump_file.sql]

단일 MySQL 데이터베이스를 복원하는 방법

데이터베이스를 복원하려면 대상 시스템에 빈 데이터베이스를 생성하고 msyql 명령을 사용하여 데이터베이스를 복원해야 합니다. 예를 들어, 다음 명령은 rsyslog.sql 파일을 rsyslog 데이터베이스로 복원합니다.

mysql -u root -ptecmint rsyslog < rsyslog.sql

대상 시스템에 이미 존재하는 데이터베이스를 복원하려면 mysqlimport 명령을 사용해야 합니다.

mysqlimport -u root -ptecmint rsyslog < rsyslog.sql

같은 방법으로 데이터베이스 테이블, 구조 및 데이터를 복원할 수도 있습니다. 이 기사가 마음에 드셨다면 친구들과 공유해 보세요.