>  기사  >  운영 및 유지보수  >  Linux에서 데이터베이스를 백업하고 복원하는 방법

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

PHPz
PHPz원래의
2023-07-05 12:04:434266검색

Linux에서 데이터베이스 백업 및 복원 방법

Linux 운영 체제에서 데이터베이스 백업 및 복원은 매우 중요한 작업입니다. 데이터 손실을 방지하기 위해서든 데이터베이스를 마이그레이션하기 위해서든 이 기술을 숙달해야 합니다. 이 문서에서는 Linux에서 데이터베이스를 백업 및 복원하는 방법을 소개하고 해당 코드 예제를 제공합니다.

1. 데이터베이스 백업

  1. mysqldump 명령을 사용하여 MySQL 데이터베이스 백업

MySQL은 오픈 소스 관계형 데이터베이스 관리 시스템인 mysqldump 명령을 사용하여 MySQL 데이터베이스를 백업할 수 있습니다. 아래와 같이:

mysqldump -u <username> -p<password> <database_name> > <backup_file.sql>

여기서 d6025a37ea8687b5422f951f7288bdc5는 데이터베이스의 사용자 이름이고, cb1ebc435675187bdcfb539b370c2e37는 데이터베이스의 비밀번호이며, 32502d266bb9e142486c7fc91a2f27d5는 백업할 데이터베이스의 이름이고, <code>0d961a72f705c85f286562928e09463c은 백업 파일의 경로와 파일 이름입니다. 예를 들어 "mydb"라는 데이터베이스를 백업하려면 다음 명령을 실행할 수 있습니다. d6025a37ea8687b5422f951f7288bdc5是数据库的用户名,cb1ebc435675187bdcfb539b370c2e37是数据库的密码,6b7267f525327f2a23dcb01791a146aa是要备份的数据库名称,0d961a72f705c85f286562928e09463c是备份文件的路径及文件名。例如,要备份名为"mydb"的数据库,可以执行以下命令:

mysqldump -u root -p123456 mydb > /backup/mydb_backup.sql
  1. 使用pg_dump命令备份PostgreSQL数据库

类似地,备份PostgreSQL数据库可以使用pg_dump命令。如下所示:

pg_dump -U <username> -W -Ft <database_name> -f <backup_file.tar>

其中,d6025a37ea8687b5422f951f7288bdc5是数据库的用户名,6b7267f525327f2a23dcb01791a146aa是要备份的数据库名称,1c92970fa88b6759818996c6c108bcd5是备份文件的路径及文件名。例如,要备份名为"mydb"的数据库,可以执行以下命令:

pg_dump -U postgres -W -Ft mydb -f /backup/mydb_backup.tar

二、还原数据库

  1. 还原MySQL数据库

要还原MySQL数据库,可以使用以下命令:

mysql -u <username> -p<password> <database_name> < <backup_file.sql>

其中,d6025a37ea8687b5422f951f7288bdc5是数据库的用户名,cb1ebc435675187bdcfb539b370c2e37是数据库的密码,6b7267f525327f2a23dcb01791a146aa是要还原的数据库名称,0d961a72f705c85f286562928e09463c是备份文件的路径及文件名。例如,要将备份文件"mydb_backup.sql"还原到名为"mydb"的数据库中,可以执行以下命令:

mysql -u root -p123456 mydb < /backup/mydb_backup.sql
  1. 还原PostgreSQL数据库

要还原PostgreSQL数据库,可以使用以下命令:

pg_restore -U <username> -d <database_name> <backup_file.tar>

其中,d6025a37ea8687b5422f951f7288bdc5是数据库的用户名,6b7267f525327f2a23dcb01791a146aa是要还原的数据库名称,1c92970fa88b6759818996c6c108bcd5

pg_restore -U postgres -d mydb /backup/mydb_backup.tar

    pg_dump 명령을 사용하여 PostgreSQL 데이터베이스를 백업합니다.

    마찬가지로 다음 명령을 사용할 수 있습니다. PostgreSQL 데이터베이스를 백업하는 pg_dump 명령입니다. 아래와 같이

    #!/bin/bash
    
    #数据库备份路径
    backup_dir="/backup"
    #数据库用户名
    username="root"
    #数据库密码
    password="123456"
    #需要备份的数据库名称
    database_name="mydb"
    #备份文件名
    backup_file="${backup_dir}/${database_name}_backup_$(date +%Y%m%d%H%M%S).sql"
    
    #执行备份命令
    mysqldump -u ${username} -p${password} ${database_name} > ${backup_file}
    
    #删除过期备份(保留最近7天的备份)
    find ${backup_dir} -name "${database_name}_backup_*" -type f -mtime +7 -exec rm -f {} ;

    여기서, d6025a37ea8687b5422f951f7288bdc5는 데이터베이스의 사용자 이름이고, 6b7267f525327f2a23dcb01791a146aa은 백업할 데이터베이스의 이름이며, d7343ce59b1494947cea45b4b2f64233는 백업 파일의 경로와 파일 이름입니다. 예를 들어 "mydb"라는 데이터베이스를 백업하려면 다음 명령을 실행할 수 있습니다.

    crontab -e

    2. 데이터베이스 복원

    MySQL 데이터베이스 복원

    MySQL 데이터베이스를 복원하려면 다음 명령을 사용할 수 있습니다.

    0 2 * * * /bin/bash /path/to/backup.sh

    여기서, <username></username>은 데이터베이스의 사용자 이름이고, <password></password>는 데이터베이스의 비밀번호이고, <database_name> code>는 복원할 데이터베이스의 이름이고, <code>0d961a72f705c85f286562928e09463c은 백업 파일의 경로와 파일 이름입니다. 예를 들어 백업 파일 "mydb_backup.sql"을 "mydb"라는 데이터베이스로 복원하려면 다음 명령을 실행할 수 있습니다.

    rrreee
      🎜PostgreSQL 데이터베이스 복원 🎜🎜🎜PostgreSQL을 복원하려면 데이터베이스의 경우 다음 명령을 사용할 수 있습니다. 🎜rrreee🎜여기서 d6025a37ea8687b5422f951f7288bdc5는 데이터베이스의 사용자 이름이고, 6b7267f525327f2a23dcb01791a146aa은 데이터베이스의 이름입니다. 복원하려면 d7343ce59b1494947cea45b4b2f64233는 백업 파일의 경로와 파일 이름입니다. 예를 들어, "mydb_backup.tar" 백업 파일을 "mydb"라는 데이터베이스에 복원하려면 다음 명령을 실행하면 됩니다. 🎜rrreee🎜 3. 데이터베이스를 정기적으로 백업하세요. 🎜🎜 데이터베이스를 정기적으로 백업하면 보안과 보안을 보장할 수 있습니다. 데이터의 무결성. 셸 스크립트를 작성하고 crontab 예약 작업을 사용하면 데이터베이스를 자동으로 백업할 수 있습니다. 🎜🎜다음은 간단한 백업 스크립트의 예입니다. 🎜rrreee🎜위 스크립트를 backup.sh로 저장하고 실행 권한을 추가하세요. 🎜🎜다음으로 crontab을 사용하여 예약된 작업을 추가합니다. 🎜rrreee🎜열린 파일에 매일 오전 2시에 백업 작업이 실행된다는 내용을 추가합니다. 🎜rrreee🎜저장하고 종료합니다. 🎜🎜위의 방법을 사용하면 Linux에서 데이터베이스를 쉽게 백업 및 복원하고 정기적으로 백업 작업을 수행할 수 있습니다. 데이터베이스의 보안과 무결성을 보장하는 것은 데이터가 손실되지 않도록 하는 중요한 조치 중 하나입니다. 🎜

위 내용은 Linux에서 데이터베이스를 백업하고 복원하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.