Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So sichern und wiederherstellen Sie eine Datenbank unter Linux

So sichern und wiederherstellen Sie eine Datenbank unter Linux

PHPz
PHPzOriginal
2023-07-05 12:04:434254Durchsuche

So sichern und wiederherstellen Sie eine Datenbank unter Linux

Im Linux-Betriebssystem ist das Sichern und Wiederherstellen einer Datenbank eine sehr wichtige Aufgabe. Ob es darum geht, Datenverluste zu verhindern oder eine Datenbank zu migrieren, Sie müssen diese Fähigkeit beherrschen. In diesem Artikel wird die Durchführung einer Datenbanksicherung und -wiederherstellung unter Linux vorgestellt und entsprechende Codebeispiele bereitgestellt.

1. Sichern Sie die Datenbank

  1. Verwenden Sie den Befehl mysqldump, um die MySQL-Datenbank zu sichern.

MySQL ist ein relationales Open-Source-Datenbankverwaltungssystem. Sie können den Befehl mysqldump verwenden, um die MySQL-Datenbank zu sichern. Wie unten gezeigt:

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

Wobei d6025a37ea8687b5422f951f7288bdc5 der Benutzername der Datenbank ist, cb1ebc435675187bdcfb539b370c2e37 das Passwort der Datenbank ist, 620ea7ce1d9be67b5e0baf94e231a414 ist der Name der zu sichernden Datenbank, <code>0d961a72f705c85f286562928e09463c ist der Pfad und Dateiname der Sicherungsdatei. Um beispielsweise die Datenbank mit dem Namen „mydb“ zu sichern, können Sie den folgenden Befehl ausführen: 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

    Verwenden Sie den Befehl pg_dump, um die PostgreSQL-Datenbank zu sichern.

    Ähnlich können Sie die verwenden pg_dump-Befehl zum Sichern der PostgreSQL-Datenbank. Wie unten gezeigt:

    #!/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 {} ;

    Wobei d6025a37ea8687b5422f951f7288bdc5 der Benutzername der Datenbank ist, 6b7267f525327f2a23dcb01791a146aa der Name der zu sichernden Datenbank ist, d7343ce59b1494947cea45b4b2f64233 ist der Pfad und Dateiname der Sicherungsdatei. Um beispielsweise die Datenbank mit dem Namen „mydb“ zu sichern, können Sie den folgenden Befehl ausführen:

    crontab -e

    2. Stellen Sie die Datenbank wieder her.

    MySQL-Datenbank wiederherstellen.

    Um die MySQL-Datenbank wiederherzustellen, können Sie den folgenden Befehl verwenden:

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

    Wobei d6025a37ea8687b5422f951f7288bdc5 der Benutzername der Datenbank ist, cb1ebc435675187bdcfb539b370c2e37 das Passwort der Datenbank ist, 6b7267f525327f2a23dcb01791a146aa code> ist der Name der wiederherzustellenden Datenbank, 0d961a72f705c85f286562928e09463c ist der Pfad und Dateiname der Sicherungsdatei. Um beispielsweise die Sicherungsdatei „mydb_backup.sql“ in der Datenbank mit dem Namen „mydb“ wiederherzustellen, können Sie den folgenden Befehl ausführen:

    rrreee
      🎜Stellen Sie die PostgreSQL-Datenbank wieder her. 🎜🎜🎜So stellen Sie PostgreSQL wieder her Datenbank können Sie den folgenden Befehl verwenden: 🎜rrreee🎜wobei d6025a37ea8687b5422f951f7288bdc5 der Benutzername der Datenbank ist, 6b7267f525327f2a23dcb01791a146aa der Name der Datenbank ist wiederhergestellt werden soll, ist d7343ce59b1494947cea45b4b2f64233 der Pfad und Dateiname der Sicherungsdatei. Um beispielsweise die Sicherungsdatei „mydb_backup.tar“ in der Datenbank mit dem Namen „mydb“ wiederherzustellen, können Sie den folgenden Befehl ausführen: 🎜rrreee🎜 3. Sichern Sie die Datenbank regelmäßig. 🎜🎜 Regelmäßige Sicherungen der Datenbank können die Sicherheit und Sicherheit gewährleisten Integrität der Daten. Durch das Schreiben von Shell-Skripten und die Verwendung geplanter Crontab-Aufgaben können Sie die Datenbank automatisch sichern. 🎜🎜Hier ist ein Beispiel für ein einfaches Backup-Skript: 🎜rrreee🎜Speichern Sie das obige Skript als backup.sh und fügen Sie ausführbare Berechtigungen hinzu. 🎜🎜Als nächstes verwenden Sie crontab, um eine geplante Aufgabe hinzuzufügen: 🎜rrreee🎜Fügen Sie in der geöffneten Datei den folgenden Inhalt hinzu, um anzugeben, dass die Sicherungsaufgabe jeden Tag um 2 Uhr morgens ausgeführt wird: 🎜rrreee🎜Speichern und beenden. 🎜🎜Mit den oben genannten Methoden können Sie die Datenbank unter Linux einfach sichern und wiederherstellen und regelmäßig Sicherungsaufgaben durchführen. Die Gewährleistung der Sicherheit und Integrität der Datenbank ist eine der wichtigen Maßnahmen, um sicherzustellen, dass keine Daten verloren gehen. 🎜

Das obige ist der detaillierte Inhalt vonSo sichern und wiederherstellen Sie eine Datenbank unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn