1. 程式人生 > 其它 >Linux mysql備份與還原

Linux mysql備份與還原

1 備份整庫 注意箭頭指向右 >

-- 登入到資料庫伺服器,選擇一個目錄,執行下列備份語句,如果報mysqldump不存在,則進入到mysql安裝目錄bin目錄下執行

mysqldump -uroot -pxxx bunuo>bunuo_temp.sql -- 生成檔案就在當前目錄下

 

2 將備份(bunuo_temp.sql)檔案上傳到臨時伺服器某個位置

 

3 登入到中間伺服器建立mysql臨時庫,從linux連線mysql
mysql -uroot -pxxx

4 mysql命令列建立臨時庫,mysql命令列下執行下列建立語句
CREATE DATABASE bunuo_temp DEFAULT CHARACTER SET utf8;


5 上傳bunuo_temp.sql到臨時伺服器上,在檔案所在目錄下執行恢復語句,將備份庫匯入臨時伺服器,恢復庫時的箭頭指向左 <

退出mysql命令列,進入linux服務命令列操作
mysql -uroot -pxxx bunuo_temp<bunuo_temp.sql


備註:如果報mysql不存在,則需要進入mysql安裝目錄bin目錄下,並且將備份檔案也傳到該目錄下,再執行恢復語句

 

6 備註

(1) 備份檔案中前面的檔案不能刪除,否則匯入時會報ERROR-1231

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

 

 

 

 

ERROR-1231

 

 

 

(2) 報ERROR-1231是因為max_allowed_packet設定過小導致

show variables like '%max_allowed_packet%';
select @@max_allowed_packet;

set global max_allowed_packet = 1024*1024*1024;  -- byte

 

(3) 只匯出表結構語句

mysqldump -uroot -pxxx -d 資料庫名 > 資料庫名.sql