国产探花免费观看_亚洲丰满少妇自慰呻吟_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ā)表
主站蜘蛛池模板: 阿坝县| 侯马市| 武强县| 邯郸市| 雷州市| 柞水县| 兰考县| 河北省| 聊城市| 梁河县| 台前县| 台湾省| 梅河口市| 龙南县| 洱源县| 北流市| 西充县| 新龙县| 六安市| 湖南省| 安仁县| 太湖县| 灵石县| 宁南县| 虹口区| 通榆县| 尉犁县| 修水县| 晋宁县| 武强县| 广丰县| 长泰县| 桑日县| 阳泉市| 海口市| 文昌市| 云林县| 浦县| 麻江县| 姚安县| 修武县|