一、編寫備份腳本
二、更改備份腳本許可權
chmod u+x /usr/local/tools/mysql_dy_backup.sh
三、設置定時執行腳本任務
crontab -e
30 22 * * * /usr/local/tools/mysql_dy_backup.sh
2. centos 6.5 mysql 自動備份資料庫腳本怎麼寫
#!/bin/bash
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
#資料庫用戶名
dbuser='root'
#資料庫用密碼
dbpasswd='********'
需要備份的資料庫,多個資料庫用空格分開
dbname='xiaohuai xiaohuai2'
#備份時間
backtime=`date +%Y%m%d%H%M%S`
#日誌備份路徑
logpath='/home/mysqlbak'
#數據備份路徑
datapath='/home/mysqlbak'
#日誌記錄頭部
echo 『"備份時間為${backtime},備份資料庫表 ${dbname} 開始" >> ${logpath}/log.log
#正式備份資料庫
for table in $dbname; do
source=`mysqlmp -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;
3. 在centos上使用非root用戶安裝資料庫,如何設置開機自動神秘mysql資料庫
非root用戶安裝,那就應該是源碼安裝了。可以把MySQL目錄下的support-file目錄下的mysql.server拷貝為/etc/init.d/mysqld,,然後再chkconfig --add mysqld就ok了
4. centos 7.2 遷移 mysql 資料庫文件
原目錄:/var/lib/mysql
新目錄:/data/mysql
1.將/smp/mysql/mysql.sock文件復制到/data/db/mysql.sock,並停止運行mysql(注意,需將
mysql.sock文件復制後,才能停止mysql)
/smp/mysql/bin/mysqladmin -uroot -p shutdown
2.data目錄遷移
cp -a /var/lib/mysql/* /data/mysql
3.修改/etc/my.cnf
socket=/data/db/mysql.sock(注意將原來的socket文件注釋掉,方便回滾)
datadir=/data/db/data
4.建立軟鏈接
ln -s /data/db/mysql.sock /var/lib/mysql/mysql.sock
5. 阿里雲centos7伺服器怎麼備份mysql資料庫
在伺服器上安裝一個phpmyadmin,就可以通過網頁的方式進行管理mysql
或者是直接備份mysql的數據文件夾
centos系統的話,數據文件夾在mysql安裝目錄下的var目錄
直接將此目錄下的文件一份到本地,就可以了。
6. CentOS中如何備份mysql資料庫
1 mysqlmp -u(root) -p(password) -h(first host ip) (database name) | mysql -u(root) -p(password) -h(second host ip) (database name)
2 8G就可以了,一般是內存*2。swap如果使用過多,就該考慮增加內存了。
7. 一台MSSQL資料庫遠程傳輸大數據到centos 下的mysql資料庫,每天更新一次,求靠譜方案。
如果是MSSQL的話,傳輸到mysql中,因為資料庫不同,極有可能會發生數據轉換,從而導致浪費時間,或者轉換出錯。
你可以考慮用兩台MSSQL,採用MSSQL的「Replication」(復制)功能。也就是新增一台MSSQL機器作為訂閱機,定時同步MSSQL資料庫。這台機器實際上就是利用了MSSQL的功能實現了數據備份了。然後你就有充分的時間,從這台備份機上用自己的方式,更新到mysql了。
8. centos每天自動備份mysql資料庫問題
腳本如下
#!/bin/bash
#功能說明:本功能用於備份資料庫
#編寫日期:**********
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
export PATH
#資料庫用戶名
dbuser='root'
#資料庫密碼
dbpasswd='123456'
#資料庫名,可以定義多個資料庫,中間以空格隔開,如:test test1 test2
dbname='test1 test2'
#備份時間
backtime=`date +%Y%m%d%H%M%S`
#日誌備份路徑
logpath='/second/backup'
#數據備份路徑
datapath='/second/backup'
#日誌記錄頭部
echo 『"備份時間為${backtime},備份資料庫表 ${dbname} 開始" >> ${logpath}/mysqllog.log
#正式備份資料庫
for table in $dbname; do
source=`mysqlmp -u ${dbuser} -p${dbpasswd} ${table}> ${logpath}/${backtime}.sql` 2>> ${logpath}/mysqllog.log;
#備份成功以下操作
if [ "$?" == 0 ];then
cd $datapath
#為節約硬碟空間,將資料庫壓縮
tar jcf ${table}${backtime}.tar.bz2 ${backtime}.sql > /dev/null
#刪除原始文件,只留壓縮後文件
rm -f ${datapath}/${backtime}.sql
echo "資料庫表 ${dbname} 備份成功!!" >> ${logpath}/mysqllog.log
else
#備份失敗則進行以下操作
echo "資料庫表 ${dbname} 備份失敗!!" >> ${logpath}/mysqllog.log
fi
done
定時執行腳本:
方式:
1、
執行 crontab -e
輸入以下內容:
______________________________________________________________________________
00 00 * * * /bin/bash yourpath/mysqlbak.sh
2、
打開自動執行文件
vi /etc/crontab
在etc中加入如下內容,讓其自動執行任務。
00 00 * * * root /mysqlbak.sh
以上兩個 00 00 *** 為每天的凌晨自動執行腳本
分 時 日 月 周 命令M: 分鍾(0-59)。每分鍾用*或者 */1表示H:小時(0-23)。(0表示0點)D:天(1-31)。m: 月(1-12)。d: 一星期內的天(0~6,0為星期天)。
3、
Redhat方法:
Redhat的crontab採用按時間調用4個目錄(/etc/cron.hourly:每小時;/etc/cron.daily:每
天;/etc/cron.weekly:每周;/etc/cron.monthly:每月)中腳本出來運行的方式。
Redhat中只需要將剛才編輯的腳本復制到相應的目錄即可。
cp /autobackupmysql.sh etc/cron.daily
重啟etc
/etc/rc.d/init.d/crond restart
這樣能保證每日跟新准確!!!!!謝謝為您解答!!!!!!