Cara menggunakan crontab untuk membuat sandaran pangkalan data MYSQL secara kerap di bawah Linux
Ikut sahaja 3 langkah di bawah, semuanya di bawah kawalan anda:
Langkah 1: Konfigurasikan kod direktori sandaran pada pelayan:
mkdir /var/lib/mysqlbackup cd /var/lib/mysqlbackup
Kedua Langkah: Tulis kod skrip sandaran:
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天前的备份文件
Langkah 3: Tukar kebenaran skrip sandaran
chmod +x dbbackup.sh
Langkah 4: Gunakan crontab untuk melaksanakan skrip sandaran kod selalu :
crontab -e
Jika anda membuat sandaran pada jam 21:00 setiap malam, tambahkan kod berikut
00 21 * /var/lib/mysqlbackup/dbbackup.sh
Masalah yang akan anda hadapi:
1.mysqldump ialah sandaran Jika anda tidak memahami arahan pangkalan data, hanya gunakan Baidu.
2. Crontab ialah arahan untuk tugasan berjadual Jika anda tidak faham, anda boleh melawati http://www.thinkphp.cn/code/1...
3 mesti terlebih dahulu memastikan anda telah menetapkan kata laluan untuk root Jika tidak, Mendapat ralat: 1045: Akses ditolak untuk pengguna 'root'@'localhost' (menggunakan kata laluan: YES) apabila cuba menyambung
akan. dilaporkan apabila mysqldump dilaksanakan Penyelesaian:
Log masuk ke klien 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