當前位置:首頁 » 操作系統 » 阿里雲資料庫備份

阿里雲資料庫備份

發布時間: 2023-05-01 02:09:12

❶ 如何將阿里雲的mysql(RDS)數據備份到本地

本例以本地伺服器為 RHEL6/x64 系統,備份文件存儲路徑為/home/mysql/為例。

  • 下載雲資料庫物理備份文件並上傳至目標伺服器。備份文件獲取方法請參見下載備份數據。如果目標伺服器可以訪問源實例,您也可以使用wget "url"下載備份文件。其中url為備份文件下載地址。

  • 切換路徑到備份文件所在路徑。


  • cd /home/mysql/

  • 解壓備份文件。


    其中,filename.tar.gz為備份文件名。

  • tar vizxf filename.tar.gz

  • 檢查解壓後文件包含的資料庫是否正確。


    系統顯示如下,其中db0dz1rv11f44yg2、mysql和test為雲資料庫中存在的資料庫。


  • -rw-r--r-- 1 root root 269 Aug 19 18:15 backup-my.cnf

  • drwxr-xr-x 2 root root 4096 Aug 21 10:31 db0dz1rv11f44yg2

  • -rw-rw---- 1 root root 209715200 Aug 7 10:44 ibdata1

  • drwxr-xr-x 2 root root 4096 Aug 21 10:31 mysql

  • drwxr-xr-x 2 root root 4096 Aug 21 10:31 test

  • -rw-r--r-- 1 root root 10 Aug 19 18:15 xtrabackup_binary

  • -rw-r--r-- 1 root root 23 Aug 19 18:15 xtrabackup_binlog_info

  • -rw-r--r-- 1 root root 77 Aug 19 18:15 xtrabackup_checkpoints

  • -rw-r--r-- 1 root root 2560 Aug 19 18:15 xtrabackup_logfile

  • -rw-r--r-- 1 root root 72 Aug 19 18:15 xtrabackup_slave_info

  • cd filename/

  • ll

  • 恢復數據文件。


    系統顯示innobackupex: completed OK!,則數據恢復成功。

  • innobackupex --defaults-file=./backup-my.cnf --apply-log ./

  • 修改配置文件。將解壓文件backup-my.cnf中的innodb_fast_checksum、innodb_page_size、innodb_log_block_size注釋掉,並且添加datadir=/home/mysql,如下所示。


  • # This MySQL options file was generated by innobackupex-1.5.1.

  • # The MySQL Server

  • [mysqld]

  • innodb_data_file_path=ibdata1:200M:autoextend

  • innodb_log_files_in_group=2

  • innodb_log_file_size=524288000

  • #innodb_fast_checksum=0

  • #innodb_page_size=16364

  • #innodb_log_block_size=512

  • datadir=/home/mysql/

  • 重裝 MySQL 系統庫,取得資料庫的 root 許可權。


    系統顯示如下,則 mysql 系統庫重裝成功。


  • Installing MySQL system table...

  • OK

  • Filling help table...

  • OK

  • rm -rf mysql

  • mysql_install_db --user=mysql --datadir=/home/mysql/

  • 修改文件屬主。


  • chown -R mysql:mysql /home/mysql/

  • 啟動 mysqld 進程。


  • mysqld_safe --defaults-file=/home/mysql/backup-my.cnf &

  • 使用客戶端登錄資料庫。


  • mysql –u root –p

  • 驗證資料庫是否完整。


    系統顯示入選,則資料庫恢復成功。


  • +--------------------+

  • | Database |

  • +--------------------+

  • | information_schema |

  • | db0dz1rv11f44yg2 |

  • | mysql |

  • | performance_schema |

  • | test |

  • +--------------------+

  • show databases;

❷ 怎麼用阿里雲伺服器做本地網站的容災備份

可以利用資料庫自身的復制功能,把數據實時同步到阿里雲伺服器。
登錄阿里雲賬戶,有個控制台,打開你的ecs伺服器詳細列表頁面有個快照備份,點擊開啟或手動備份相應的數據。
阿里雲有資料庫設置可訪問ip, 本地安裝個客戶端,連上資料庫,就可以在工具里導出到本地了。

❸ 如何將資料庫備份到阿里雲的OSS上

第步:我資料庫備份某目錄註明間:

運行備份腳本(注意備份目錄我/home/dbback/)

查看目錄否備份文件細同能發現我mysqlmp沒指定用戶名密碼啥我運行候費用輸入密碼呢莫著急馬揭曉答案mysql5.6(具體版本編號記)密碼寫腳本運行警告告訴要密碼寫腳本危險我夥伴該辦呢官給解決案期望配置my.cnf文件所現打my.cnf加入欄位:

兩條運行腳本提示要輸入密碼馬測試看否功沒問題我進入步
第二步:何自備份oss始前我要做兩件事

1、登錄阿雲控制台點右管理控制台點左產品與服務第二列點擊象存儲OSS沒通要通通直接點擊右新建bucket創建bucket記住buket名字(註:其實通api直接創建bucket操作所我用控制台創建降低理解難度)

2、始寫傳腳本要導入osssdk所要安裝比較簡單跟安裝其python包沒啥區別解壓進入目錄運行python setup.py install 安裝完畢接看我何使用全部代碼:

#!/usr/bin/python env
#autor:glacier
#date:2015-11-16
import os,os.path,time
import operator
import time
from oss.oss_api import *
prefix = '/home/dbback'
logtime = time.strftime(time.ctime())
#filelist = [ file for file in os.listdir(os.path.dirname(os.path.abspath(__file__))) if os.path.isfile(file) ]
filelist = [ file for file in os.listdir(prefix) if os.path.isfile(prefix + '/' + file) ]
def get_time(filename):
ft = os.stat(filename)
return ft.st_ctime
#def get_max():
# flist = []
# for file in filelist:
# flist.append(os.stat(file).st_ctime)
# return max(flist)
def get_dist():
d = {}
for file in filelist:
d[file] = get_time(prefix + '/' + file)
return d
if __name__ == '__main__':
#maxtime = get_max()
d = get_dist()
#dic= sorted(d.iteritems(), key=lambda d:d[1], reverse = True)
upfile = max(d.iteritems(), key=operator.itemgetter(1))[0]
endpoint = "your aliyun endpoint"
accessKeyId, accessKeySecret="your accessKeyId","your accessKeySecret "
oss = OssAPI(endpoint, accessKeyId, accessKeySecret)
res = oss.put_object_from_file("bucketname",upfile,prefix + '/' + upfile)
if res.status != 200:
with open('/var/log/dbback.log', 'a+') as f:
f.write(logtime + ' back failed' + '\n')

我接析腳本內容其腳本注釋行都用看我編寫程測試用始我設定備份文件目錄記錄志間備份目錄所文件列表(列表其實式我用簡單式文件列錶慢)定義兩函數get_time()函數獲取文件創建間戳get_dist()函數獲取文件名間戳字典主函數部比較難理解根據字典value排序獲文件名d.iteritems()獲字典每key,valuekey指定函數operator.itemgetter(1)表示用value排序(兩元素key 0value1)間戳排序完返key[0]做工作腳本其部內容我說都見用沒難於理解腳本介紹接進入我步

第三步:腳本寫入crontab具體候執行根據家各自業務同設置沒特別

❹ 如何在阿里雲伺服器上備份資料庫數據

方法/步驟
首先,登錄你的阿里雲網站控制管理後台。
然後,點擊右上角【產品管理】或者你的用戶名,進入管理控制台。
在左側【產品與服務】裡面,點擊你的伺服器,這里以我購買的雲虛擬主機作為例子。
選擇你需要備份的伺服器(可能有些人有好幾個伺服器),點擊右側的圖示的【管理】。
然後,選擇第一排【工具&服務】,見圖示。
6
最後,點擊【備份站點】,輸入備份備注信息,點擊確定即可。

❺ 如何使用腳本自動備份阿里雲rds資料庫

1、在ECS上使用mysqlmp進行邏輯備份,再中轉到本地伺服器。使用ECS中轉是為了避免將RDS暴露到公網上。
2、在RDS控制台上的「備份恢復」中找到「數據備份」,七天內的全量備份是帶有下載地址的。點擊後會產生一個24小時有效的下載地址。下載回去後按照文檔說明進行恢復。

❻ 阿里雲centos7伺服器怎麼備份mysql資料庫

在伺服器上安裝一個phpmyadmin,就可以通過網頁的方式進行管理mysql
或者是直接備份mysql的數據文件夾
centos系統的話,數據文件夾在mysql安裝目錄下的var目錄
直接將此目錄下的文件一份到本地,就可以了。

❼ 如何將資料庫備份到阿里雲的OSS上

第一步:將我們資料庫備份到某目錄下,註明時間:

運行備份腳本(注意在備份目錄下,我的在/home/dbback/下)

查看目錄是否生成備份文件,心細的同學可能發現我這個mysqlmp沒有指定用戶名和密碼,為啥我運行的時候費用輸入密碼呢?莫著急,馬上為你揭曉答案,因為mysql5.6後(具體版本編號不記得了),如果你把密碼寫到腳本里,運行會有警告,告訴你不要把密碼寫到腳本里,會有危險,那我的小夥伴該怎麼辦呢,官方給了解決方案,期望你是配置到my.cnf文件中,所以,現在打開你的my.cnf,加入如下欄位:

有了以上這兩條,運行腳本時就不會在提示要輸入密碼了,馬上測試下,看是否成功,如果沒問題,我們進入下一步。
第二步:如何自動備份到oss中,開始前我們要做兩件事,

1、登錄阿里雲控制台,點右上「管理控制台」,然後點左上「產品與服務」,在第二列中點擊「對象存儲OSS」,如果沒開通就要開通,如果開通了直接點擊右上的「新建bucket」,來創建一個bucket,記住buket的名字。(註:其實通過api也是可以直接創建bucket的,因為這個操作不多,所以我就用控制台來創建了,降低理解的難度。)

2、開始寫上傳腳本,因為要導入oss的sdk,所以要下安裝下,比較簡單,跟安裝其他python包沒啥區別,解壓進入目錄,然後運行python setup.py install 就安裝完畢了,接下來看我們如何使用它,全部代碼如下:

#!/usr/bin/python env
#autor:glacier
#date:2015-11-16
import os,os.path,time
import operator
import time
from oss.oss_api import *
prefix = '/home/dbback'
logtime = time.strftime(time.ctime())
#filelist = [ file for file in os.listdir(os.path.dirname(os.path.abspath(__file__))) if os.path.isfile(file) ]
filelist = [ file for file in os.listdir(prefix) if os.path.isfile(prefix + '/' + file) ]
def get_time(filename):
ft = os.stat(filename)
return ft.st_ctime
#def get_max():
# flist = []
# for file in filelist:
# flist.append(os.stat(file).st_ctime)
# return max(flist)
def get_dist():
d = {}
for file in filelist:
d[file] = get_time(prefix + '/' + file)
return d
if __name__ == '__main__':
#maxtime = get_max()
d = get_dist()
#dic= sorted(d.iteritems(), key=lambda d:d[1], reverse = True)
upfile = max(d.iteritems(), key=operator.itemgetter(1))[0]
endpoint = "your aliyun endpoint"
accessKeyId, accessKeySecret="your accessKeyId","your accessKeySecret "
oss = OssAPI(endpoint, accessKeyId, accessKeySecret)
res = oss.put_object_from_file("bucketname",upfile,prefix + '/' + upfile)
if res.status != 200:
with open('/var/log/dbback.log', 'a+') as f:
f.write(logtime + ' back failed' + '\n')

我們接下來分析下腳本內容,其中腳本中注釋的行都不用看,是我編寫過程中測試用的,最開始我們設定了備份文件的目錄和記錄日誌的時間,然後生成了一個備份目錄所有文件的列表(列表其實不是最好的方式,我是用最簡單的方式了,因為文件多了,列表會慢),然後定義了兩個函數,get_time()函數是獲取文件的創建時間戳,get_dist()函數是獲取文件名和時間戳的字典,主函數部分比較難理解的根據字典value排序獲得文件名了,d.iteritems()獲得字典中的每個key,value對,key指定了一個函數,operator.itemgetter(1)表示用value來排序(因為就兩個元素,key 是0,value就是1了),就是時間戳,排序完後返回key,最後的[0]做了這個工作,腳本其它部分的內容我就不多說了,都是很常見的用法,沒什麼難於理解的,好,腳本就介紹到這里,接下來進入我們最後一步。

第三步:將腳本寫入crontab中,具體什麼時候執行,就根據大家各自業務不同來設置了,沒什麼特別的。

熱點內容
新年解壓糖 發布:2024-05-20 09:50:55 瀏覽:54
以太坊價值在哪裡存儲 發布:2024-05-20 09:46:34 瀏覽:641
cgipython配置 發布:2024-05-20 09:29:06 瀏覽:865
在我的世界伺服器中隱身 發布:2024-05-20 09:07:46 瀏覽:972
加西貝拉壓縮機好嗎 發布:2024-05-20 08:58:56 瀏覽:757
eve腳本航 發布:2024-05-20 08:56:59 瀏覽:591
取票人的密碼是什麼 發布:2024-05-20 08:21:43 瀏覽:963
天貓帳號密碼應輸入什麼 發布:2024-05-20 08:16:26 瀏覽:272
plsql異常處理 發布:2024-05-20 07:54:47 瀏覽:542
dreamweaver上傳網頁 發布:2024-05-20 07:51:24 瀏覽:462