當前位置:首頁 » 編程軟體 » mysql備份shell腳本

mysql備份shell腳本

發布時間: 2025-08-26 19:23:05

⑴ Mysql 8自動備份腳本密碼安全警告

MySQL 8自動備份腳本密碼安全警告的解決方法如下

  1. 問題原因

    • 在Shell腳本中直接使用mysqlmp命令並附帶p選項來指定密碼,這觸發了MySQL 8的安全保護機制。MySQL 8不建議在命令行中直接顯示密碼,因為這可能導緻密碼泄露。
  2. 解決方法

    • 修改MySQL配置文件:在MySQL的配置文件/etc/my.cnf中,添加或更新與密碼相關的配置。通常,可以添加[client]部分,並在其中設置user和password選項。
    • 示例配置:ini[client]user=your_mysql_usernamepassword=your_mysql_password # 注意:這里只是示例,不建議在生產環境中明文存儲密碼 更新腳本:在Shell腳本中,去掉mysqlmp命令後的p選項和密碼值。由於已經在配置文件中設置了用戶名和密碼,mysqlmp將自動讀取這些配置。3. 重新執行腳本: 保存對腳本和配置文件的修改後,重新執行備份腳本。此時,MySQL將不再顯示密碼安全警告,因為腳本不再在命令行中直接指定密碼。4. 額外安全措施許可權控制:確保只有授權用戶才能訪問包含資料庫密碼的配置文件和Shell腳本。 日誌審計:啟用並定期檢查資料庫和操作系統的日誌,以檢測任何潛在的安全事件。 定期更換密碼:定期更換資料庫密碼,以減少密碼泄露的風險。通過以上步驟,可以有效解決MySQL 8自動備份腳本中的密碼安全警告問題,並確保備份過程的安全性和可靠性。

linux shell腳本執行mysql mysql資料庫在遠程伺服器上

方法一、適合所有格式的mysql資料庫,通過對資料庫導出導進寫個腳本定時執行:
1.導出整個資料庫 mysqlmp -u 用戶名 -p 資料庫名 > 導出的文件名 mysqlmp -u wcnc -p smgp_apps_wcnc > /存放路徑/wcnc.sql
2.導出一個表 mysqlmp -u 用戶名 -p 資料庫名 表名> 導出的文件名 mysqlmp -u wcnc -p smgp_apps_wcnc users> /存放路徑/wcnc_users.sql
3.導出一個資料庫結構 mysqlmp -u wcnc -p -d --add-drop-table smgp_apps_wcnc >/存放路徑/wcnc_db.sql
定義:
-d 沒有數據
--add-drop-table 在每個create語句之前增加一個drop table
4.導入資料庫 常用source 命令 進入mysql資料庫控制台:
如mysql -u root -p mysql>use 資料庫

方法二、針對mysql數據表格式為MyISAM的
假如數據文件在/var/lib/mysql
那麼直接寫個腳本
cp -r /var/lib/mysql /備份到的文件夾路徑

隔機備份用rsync增量,或定時完整備份。

⑶ 如何使用crontab每天自動備份Mysql資料庫

本經驗講解如何在linux伺服器環境下使用crontab來定時執行shell腳本,主要採用的是資料庫自帶的命令mysqlmp;本文使用的是root許可權,僅供參考,真實情況可以自行控制許可權,下面請看具體步驟:
http://jingyan..com/article/11c17a2c796354f446e39ded.html

⑷ linux自動備份,打包/var/www/html到/bak 並只保留7天

首先我在/root/backup 目錄下建立一個文件夾,
#mkdir /root/backup/mysqlbackup
以後在每天五點鍾,就會有一個文件保存在這里慎頃.
接著新建文件
#vim /root/mysqlautobak
輸入:
filename=` date +%Y%m%d `
mysqlmp --all-databases -uroot -p(mysql密碼)> /root/backup/mysqlbackup/mysql$file.sql

保存退出!
讓它可以執行
#chomd +X /root/mysqlautobak
接著開始完crontab了
#vi /etc/寬弊陸crontab

添加一行

01 5 * * * root /root/mysqlautobak
保存退出.
重新啟動你的crond服務進程
# /etc/rc.d/init.d/crond restart

===============================================================================
hp unix 自動全備份腳本(shell)

說明:每天夜裡10點自動備份並且壓縮,保留2天備份,在備份完當天後刪除前天的備份。在一切執行之後,發郵件通知,郵件內容有刪除文件和備份文件名稱及備份開始時間,結束時間。
使用方法:nohup backup.sh &
filename:backup.sh
reportlist=""
while [ 1 ]
do
hou=`date +%H`
backdate=`date +%Y%m%d`
if [ $hou -eq 22 ]
then
begintime=`date +%Y-%m-%d:%H-%M`
cd /data_log2/for_test
log_txt=`ls -al -crt log.txt | awk '{print $9}' | wc -l`
if [ $log_txt -gt 0 ]
then
mv log.txt log.txt.bak
fi
exp owner=user file=/data_log2/for_test/tmp_now.dmp
compress /data_log2/for_test/tmp_now.dmp
mv tmp_now.dmp.Z report_$backdate.dmp.Z
echo "---------report database backuped----------- ">> log.txt
echo "filename="report_$backdate.dmp.Z >>log.txt
delfile=`ls -al -crt *.Z | awk '{print $9}' | head -1`
count=`ls -al -crt *.Z | awk '{print $9}' | wc -l`
if [ $count -gt 2 ]
then
rm `ls -al -crt *.Z | awk '{print $9}' | head -1`
echo "----------- old backup deleted ---------" >> log.txt
echo "the deleted backup filename="$delfile >> log.txt
fi
echo "-----------------beigin time----------------" >卜宴> log.txt
echo $begintime >> log.txt
echo "-----------------end time----------------" >> log.txt
echo `date +%Y-%m-%d:%H-%M` >> log.txt
rm log.txt.bak
mailx -s "10.203.116.23 daily database backup" -r ")" $reportlist < log.txt
fi
sleep 3600
done
======================================================================================
1 給我自己的伺服器寫的一段自動備份的shell
#!/bin/bash
#指定要備份的系統目錄
SYSTEM_DIR=/home
#指定要備份的目錄MAIL_DIR=mailbox #郵件目錄
WEBSITE_DIR=www/html #WEB目錄
DATABASE_DIR=databases #資料庫目錄
#指定備份文件的前綴
MAIL_PREFIX=mail
WEBSITE_PREFIX=web
DATABASE_PREFIX=database
#有朋友的一台WIN2K伺服器,我在上面開了ftp,把備份文件傳到他的伺服器上,相當於我實現了個雙機備份
#ftp伺服器的IP
FTP_SERV=211.144.155.111
#ftp用戶名
FTP_USER=username
#ftp密碼
FTP_PASS=12345678
#備份文件存放目錄
BACKUP_DIR=/home/backup
#格式化一下日期,備份文件時用日期來做文件名的
DATE=`date +%Y%m%d`
#開始備份郵件
if [ -f ${BACKUP_DIR}/${MAIL_PREFIX}${DATE}.tar.gz ]; then #如果當天的郵件已經備份,那沒跳過
echo `date +%Y-%m-%d`'s mail backup file is existing
else #如果沒有備份,那麼用tar命令來打包郵件目錄
tar -czvf ${BACKUP_DIR}/${MAIL_PREFIX}${DATE}.tar.gz ${SYSTEM_DIR}/${MAIL_DIR}
fi
#開始備份網站目錄,備份過程同上
if [ -f ${BACKUP_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ]; then
echo `date +%Y-%m-%d`'s webebsite backup file is existing
else
tar -czvf ${BACKUP_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ${SYSTEM_DIR}/${WEBSITE_DIR}
fi
#開始備份資料庫目錄,備份過程同上
if [ -f ${BACKUP_DIR}/${DATABASE_PREFIX}${DATE}.tar.gz ]; then
echo `date +%Y-%m-%d`'s database backup file is existing
else
tar -czvf ${BACKUP_DIR}/${DATABASE_PREFIX}${DATE}.tar.gz ${SYSTEM_DIR}/${DATABASE_DIR}
fi
#開始把備份文件傳輸到另一台伺服器上
ftp -i -n $FTP_SERV <<AUTO_FTP
user $FTP_USER $FTP_PASS
passive
binary
put ${BACKUP_DIR}/${MAIL_PREFIX}${DATE}.tar.gz ${MAIL_PREFIX}${DATE}.tar.gz
put ${BACKUP_DIR}/${WEBSITE_PREFIX}${DATE}.tar.gz ${WEBSITE_PREFIX}${DATE}.tar.gz
put ${BACKUP_DIR}/${DATABASE_PREFIX}${DATE}.tar.gz ${DATABASE_PREFIX}${DATE}.tar.gz
AUTO_FTP
別忘了,還有最後一步,就是在crontab里加上個任務,這樣你就不用每次備份都一步步地敲那些瑣碎的命令了。

我的網站,希望大家多多交流

===================================
linux下:
MySQL :: Linux 下自動備份資料庫的 shell 腳本
Linux 伺服器上的程序每天都在更新 MySQL 資料庫,於是就想起寫一個 shell 腳本,結合 crontab,定時備份資料庫。其實非常簡單,主要就是使用 MySQL 自帶的 mysqlmp 命令。
腳本內容如下:
#!/bin/sh
# File: /home/mysql/backup.sh
# Database info
DB_NAME="test"
DB_USER="username"
DB_PASS="password"
# Others vars
BIN_DIR="/usr/local/mysql/bin"
BCK_DIR="/home/mysql/backup"
DATE=`date +%F`
# TODO
$BIN_DIR/mysqlmp --opt -u$DB_USER -p$DB_PASS $DB_NAME | gzip > $BCK_DIR/db_$DATE.gz

然後使用將此腳本加到 /etc/crontab 定時任務中:
01 5 * * 0 mysql /home/mysql/backup.sh
好了,每周日凌晨 5:01 系統就會自動運行 backup.sh 文件備份 MySQL 資料庫了。
/home/www/inc/back
有點長,不過我是用心寫的,希望可以幫到你:www.linuxdby.com

⑸ 如何使用shell腳本每天自動備份mysql資料庫

mysql備份用自帶的備份工具mysqlmp
每天自動執行用cron工具,把mysql的備份命令放在.sh文件裡面
.sh文件放在/etc/cron.daily目錄,就會每天自動執行了。

熱點內容
普通電腦能做區域網伺服器嗎 發布:2025-08-26 21:42:57 瀏覽:426
我的世界伺服器名字滿了怎麼辦 發布:2025-08-26 21:36:32 瀏覽:306
如何在伺服器查看html傳來的表單 發布:2025-08-26 21:35:27 瀏覽:136
安卓為什麼騰浪瀏覽器用不了 發布:2025-08-26 21:34:38 瀏覽:527
微信號加密碼在哪裡打開 發布:2025-08-26 21:14:04 瀏覽:571
公共解析伺服器台灣雲主機 發布:2025-08-26 21:13:06 瀏覽:42
linux文件合並命令 發布:2025-08-26 20:33:34 瀏覽:53
手機緩存視頻哪個好 發布:2025-08-26 19:25:43 瀏覽:985
mysql備份shell腳本 發布:2025-08-26 19:23:05 瀏覽:313
卡盟外包源碼 發布:2025-08-26 19:17:47 瀏覽:32