国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

Mysql 數(shù)據(jù)庫常用備份方法和注意事項(xiàng)

2024-07-24 12:43:45
字體:
供稿:網(wǎng)友
Mysql數(shù)據(jù)庫備份的常用3種方法:
1、直接拷貝(cp、tar,gzip,cpio)
2、mysqldump
3、mysqlhotcopy

1.使用直接拷貝數(shù)據(jù)庫備份
典型的如cp、tar或cpio實(shí)用程序。
當(dāng)你使用直接備份方法時(shí),必須保證表不在被使用。如果服務(wù)器在你正在拷貝一個(gè)表時(shí)改變它,拷貝就失去意義。
保證你的拷貝完整性的最好方法是關(guān)閉服務(wù)器,拷貝文件,然后重啟服務(wù)器。如果你不想關(guān)閉服務(wù)器,要在執(zhí)行表檢查的同時(shí)鎖定服務(wù)器。如果服務(wù)器在運(yùn)行,相同的制約也適用于拷貝文件,而且你應(yīng)該使用相同的鎖定協(xié)議讓服務(wù)器“安靜下來”。
當(dāng)你完成了備份時(shí),需要重啟服務(wù)器(如果關(guān)閉了它)或釋放加在表上的鎖定(如果你讓服務(wù)器運(yùn)行)。
要用直接拷貝文件把一個(gè)數(shù)據(jù)庫從一臺(tái)機(jī)器拷貝到另一臺(tái)機(jī)器上,只是將文件拷貝到另一臺(tái)服務(wù)器主機(jī)的適當(dāng)數(shù)據(jù)目錄下即可。要確保文件是MyIASM格式或兩臺(tái)機(jī)器有相同的硬件結(jié)構(gòu),否則你的數(shù)據(jù)庫在另一臺(tái)主機(jī)上有奇怪的內(nèi)容。你也應(yīng)該保證在另一臺(tái)機(jī)器上的服務(wù)器在你正在安裝數(shù)據(jù)庫表時(shí)不訪問它們。
2.mysqldump
基本語法:
Shell> mysqldump [OPTIONS] database [tables] > data_backup.sql (不指定數(shù)據(jù)庫名表示全部備份)
例如:
mysqldump -uroot -p --default-character-set=cp932 --opt --extended-insert=false --hex-blob -R -x mysql > E:/mysql.sql
輸出文件的開頭看起來象這樣:
# MySQL Dump 6.0
#
# Host: localhost Database: samp_db
#---------------------------------------
# Server version 3.23.2-alpha-log
#
# Table structure for table 'absence'
#
CREATE TABLE absence(
student_id int(10) unsigned DEFAULT '0' NOT NULL,
date date DEFAULT '0000-00-00' NOT NULL,
PRIMARY KEY (student_id,date)
);
#
# Dumping data for table 'absence'
#
INSERT INTO absence VALUES (3,'1999-09-03');
INSERT INTO absence VALUES (5,'1999-09-03');
INSERT INTO absence VALUES (10,'1999-09-08');
...... 
文件剩下的部分有更多的INSERT和CREATE TABLE語句組成。例:
%mysqldump samp_db >/opt/mysqldatabak/samp_db.2006-5-15
%mysqldump samp_db | gzip >/usr/archives/mysql/samp_db.1999-10-02.gz #產(chǎn)生壓縮備份
%mysqldump samp_db student score event absence >grapbook.sql #備份數(shù)據(jù)庫的某些表
%mysqladmin -h boa.snake.net create samp_db
%mysqldump samp_db | mysql -h boa.snake.net samp_db #直接恢復(fù)到另一個(gè)服務(wù)器上使用--add-drop-table選項(xiàng)告訴服務(wù)器將DROP TABLE IF EXISTS語句寫入備份文件,這樣當(dāng)我們以后用來恢復(fù)數(shù)據(jù)庫時(shí),如果表已經(jīng)存在,你不會(huì)得到一個(gè)錯(cuò)誤。
%mysqldump --add-drop-table samp_db | mysql -h boa.snake.net samp_db
mysqldump其它有用的選項(xiàng)包括:
--flush-logs和--lock-tables組合將對(duì)你的數(shù)據(jù)庫檢查點(diǎn)有幫助。--lock-tables鎖定你正在傾倒的所有表,而--flush-logs關(guān)閉并重新打開更新日志文件,新的更新日志將只包括從備份點(diǎn)起的修改數(shù)據(jù)庫的查詢。這將設(shè)置你的更新日志檢查點(diǎn)位備份時(shí)間。(然而如果你有需要執(zhí)行個(gè)更新的客戶,鎖定所有表對(duì)備份期間的客戶訪問不是件好事。)
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 富蕴县| 福州市| 威信县| 原平市| 博兴县| 班戈县| 德钦县| 安塞县| 龙江县| 余庆县| 永宁县| 青铜峡市| 东港市| 获嘉县| 大姚县| 土默特右旗| 榆林市| 扶风县| 静安区| 舟曲县| 阳朔县| 余干县| 秦皇岛市| 山西省| 临邑县| 手游| 盘锦市| 龙川县| 永吉县| 大竹县| 黄浦区| 衢州市| 六枝特区| 广灵县| 汽车| 旅游| 苍梧县| 牡丹江市| 东阳市| 普定县| 巨鹿县|