記一次阿里雲RDS MYSQL 資料恢復的經歷

2021-10-03 11:49:25 字數 2633 閱讀 9676

1.2 在linux下 用下面的**解碼出來  ***x 是日誌的數字,不要在windows下!!! win下出來的中文是亂碼的,網上你都找不到這個問題,都是提示你加base64.

mysqlbinlog -vv --base64-output=decode-rows mysql-bin.***xx >mysql-bin.***x.txt  

1.3 開啟解碼後的txt檔案,根據情況來查詢, 比如我是刪除的哪兒個表 就delete  from xx表 之類的關鍵字 ,或者搜刪除資料的大概名字 就可以了  看下圖

h下圖-備份檔案

下圖--日誌檔案

注意,下面操作必須在linux下!   我用的是ubuntu16.04

先把坑扔了 注意!!  如果碰到 dpkg狀態 之類的加鎖什麼的提示 執行sudo rm /var/lib/dpkg/lock

2.1 安裝和你阿里雲mysql一樣版本的資料庫 我這邊是5.7 ,網上方法很多,這邊就不做敘述了

不太了解linuxmysql結構的,關於mysql ,可以根據下面的部落格來看,非必看,看了可以知道出了問題在哪兒解決

2.2 安裝完mysql後  在mysql伺服器上安裝備份工具percona-xtrabackup

看下面的幾張圖,根據官方文件 mysql5.7需要安裝2.4的版本 我這邊選擇ubuntu

2.4 上**

在root模式下進行 sudo su 進入

# 停止mysql 根據系統不同命令不同

service mysql stop           或者   systemctl stop mysqld    

# 備份原先的datadir

mv /var/lib/mysql/ /var/lib/mysqlbak

# 新建乙個datadir 進入

mkdir /var/lib/mysql  

cd /var/lib/mysql       

#把備份檔案放到此目錄中  直接複製再解壓 路徑可以 ./ 可以/var/lib/mysql  # 具體怎麼解壓看上面的圖

tar -xvf hins***x_data_*********xx.tar  ./ 

成功會有提示,就2行差不多 裡面有ok!  如果很多,代表失敗,檢查下是不是 mysql沒關 或者安裝的percona-xtrabackup 不對

# 修改檔案屬性  

chown -r  mysql:mysql  /var/lib/mysql  

# 啟動mysql

service mysql start 或者 systemctl start mysqld 

2.5 如果啟動mysql 提示你 

mysql error 2006, "can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock

那麼 你連線127.0.0.1

mysql -ur(rds資料庫的賬號) -p -h 127.0.0.1

輸入密碼

如果127.0.0.1 提示你不能訪問   

我就是/etc/mysql/mysql.conf.d/mysqld.cnf

修改mysql的配置檔案/etc/mysql/my.conf,有些版本配置檔案位址為/etc/mysql/mysql.conf.d/mysqld.cnf,將bind-address位址設定為無ip訪問限制:

bind-address=0.0.0.0 

重啟mysql:

service mysql restart

如果啟動mysql提示

job for mysql.service failed because the control process exited with error code. see "systemctl status mysql.service" and "journalctl -xe" for details.

1/可能是你沒授權,或者再授權次chown -r  mysql:mysql  /var/lib/mysql    當然我是針對這裡的操作,平時出現這個還是得看具體的日誌錯誤情況

2.如果1不行,嘗試殺死全部的mysql程序,然後再開啟

嘗試重新安裝下mysql

記一次阿里雲盤擴容遇到的坑

生產環境使用了阿里雲並且以mongo作為伺服器,由於業務發展需要資料盤的400g的容量已經用到81 所以需要對磁碟做無損擴容操作。在控制台上擴容資料盤的磁碟空間 官方文件 在按照官網操作完成後,始終無法顯示擴容後的容量一直w為400g。經過各種資料查詢最終得到結果 由於centos6和centos7...

記一次docker更換阿里雲映象源遇到的坑

今天第一次給我的centos7安裝了docker,安裝完成後想拉取乙個mysql的映象。結果用docker search mysql的時候提示我 看到這個錯誤資訊,最後的提示是tls handshake timeout,我猜測大概是連線超時了,於是我按照網上的方案,將docker的預設源路徑改為阿里...

記一次sparksql讀取oracle資料優化過程

sparksql提供外接關係型資料庫的介面如下,def jdbc url string,table string,columnname string,lowerbound long,upperbound long,numpartitions int,connectionproperties prop...