備份與恢復(fù)
常規(guī)
備份命令是mysqldump,這里以tm數(shù)據(jù)庫(kù)為例,做簡(jiǎn)單介紹,詳細(xì)資料參考
http://info.mysql.cn/install/2006/0410/5521.html
備份:
#mysqldump -u root -p tm > tm_20060101.sql
按提示輸入密碼,這就把tm數(shù)據(jù)庫(kù)所有的表結(jié)構(gòu)和數(shù)據(jù)
備份到tm_20060101.sql了,因?yàn)橐傔M(jìn)行
備份工作,如果數(shù)據(jù)量大會(huì)占用很大空間,
這是可以利用gzip壓縮數(shù)據(jù),命令如下:
#mysqldump -u root -p tm | gzip > tm_20060101.sql.gz
還可以
備份到遠(yuǎn)程機(jī)器,用-h制定,如
#mysqldump -u root -p tm > tm_20060101.sql -h xxx.xxx.xxx.xxx
可以直接
備份到IP地址為xxx.xxx.xxx.xxx的遠(yuǎn)程計(jì)算機(jī)。
系統(tǒng)崩潰,重建系統(tǒng),或恢復(fù)數(shù)據(jù)庫(kù)時(shí),可以這樣恢復(fù)數(shù)據(jù):
#
mysql -u root -p tm < tm_20060101.sql
(win os):
mysql.exe -uroot -ptm --default-character-set=utf8 < tm_20060101.sql
從壓縮文件直接恢復(fù):
#gunzip < tm_20060101.sql.gz |
mysql -u root -p tm
Q:如何啟動(dòng)和關(guān)閉mysql?
A:linux下:比如我的mysql是用源碼方式安裝在/usr/local/mysql
自動(dòng):將/usr/local/mysql/share/mysql/mysql.server拷貝到/etc/rc.d/init.d/下,然后
chkconfig --add mysql.server就可以開(kāi)機(jī)就啟動(dòng)mysql服務(wù)了。
手動(dòng):以root身份執(zhí)行/usr/local/mysql/bin/mysqld_safe --user=mysql
windows下:
自動(dòng):
用cmd方式,到mysql安裝路徑的bin文件夾下,執(zhí)行:mysqld-nt --install
手動(dòng):直接到到mysql安裝路徑的bin文件夾下執(zhí)行net start mysql即可。
如果不想讓mysql在計(jì)算機(jī)啟動(dòng)時(shí)候就啟動(dòng)服務(wù),執(zhí)行:mysqld-nt --remove
也可以在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services中刪除對(duì)應(yīng)服務(wù)并重啟計(jì)算機(jī)。
關(guān)閉mysql:mysqladmin -uroot -p shutdown
啟動(dòng)mysql:
mysqld-nt --install
net start mysql
安裝完后,從win下用mysql-odbc連接時(shí),出現(xiàn)
- Client does not support authentication protocol requested by server; consider upgrading MySQL client
經(jīng)查:
A:你使用的數(shù)據(jù)庫(kù)是4.1以上,用命令行連接MySQL數(shù)據(jù)庫(kù)后,執(zhí)行下面的命令:
UPDATE mysql.user SET password=OLD_PASSWORD("your_password") WHERE Host="your_host" AND User="your_username" ;
即可解決。
your_password:改成你連接數(shù)據(jù)庫(kù)的密碼,比如 123
your_host:改成你連接數(shù)據(jù)庫(kù)的主機(jī),如果是本地的話,就是localhost
your_username:改成你連接數(shù)據(jù)庫(kù)的用戶,比如 root