Linux で crontab を使用して MYSQL データベースを定期的にバックアップする方法
次の 3 つの手順に従うだけで、すべてを制御できます:
ステップ 1: サーバー上でバックアップ ディレクトリ コードを構成します:
mkdir /var/lib/mysqlbackup cd /var/lib/mysqlbackup
ステップ 2: バックアップ スクリプトを作成しますコード:
vi dbbackup.sh 粘帖以下代码,务必更改其中的username,password和dbname。 #!/bin/sh mysqldump -uuser -ppassword dbname | gzip > /var/lib/mysqlbackup/dbnamedate +%Y-%m-%d_%H%M%S.sql.gz cd /var/lib/mysqlbackup rm -rf find . -name '*.sql.gz' -mtime 10 #删除10天前的备份文件
ステップ 3: バックアップ スクリプトの権限を変更する
chmod +x dbbackup.sh
ステップ 4: crontab を使用してバックアップ スクリプト コードを定期的に実行する:
crontab -e
毎晩 21:00 にバックアップする場合は、次のコードを追加してください
00 21 * /var/lib/mysqlbackup/dbbackup.sh
発生する問題:
1.mysqldump はデータベースをバックアップするコマンドです。わかりません、百度だけです。
2. Crontab はスケジュールされたタスク用のコマンドです。理解できない場合は、http://www.thinkphp.cn/code/1...
3 にアクセスしてください。データをバックアップするときは、 root のパスワードを設定していることを最初に確認する必要があります。そうでない場合、接続しようとすると、エラー: 1045: ユーザー 'root'@'localhost' のアクセスが拒否されました (パスワード: YES) が発生します。解決策:
mysql クライアントにログイン
mysql -hserverip -uroot -p mysql> use mysql; Database changed mysql> update user set password=password('new password') where user='root'; Query OK, 4 rows affected (0.00 sec) Rows matched: 4 Changed: 4 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) //这个命令是给用户赋予了新的权限或者密码,直接读到内存中不需要重启数据库防止出错 mysql> quit
推奨学習: 「
linux ビデオ チュートリアル