mysqldump加-w參數(shù)備份數(shù)據(jù)時(shí)需要注意的事項(xiàng)
我們?cè)谟胢ysqldump備份數(shù)據(jù)時(shí),有個(gè)選項(xiàng)是 –where / -w,可以指定備份條件,這個(gè)選項(xiàng)的解釋是:
-w, --where=name Dump only selected records. Quotes are mandatory
我們可以做個(gè)測(cè)試,例如:
mysqldump --single-transaction -w ' id < 10000 ' mydb mytable > mydump.sql
這時(shí)候就可以備份出mytable表中 id< 10000 的所有記錄了。假設(shè)我們還想加一個(gè)時(shí)間范圍條件,例如:
mysqldump --single-transaction -w " id < 10000 and logintime < unix_timestamp('2014-06-01')" mydb mytable > mydump.sql
在這里,一定注意單引號(hào)和雙引號(hào)問題,避免出現(xiàn)這種情況:
mysqldump --single-transaction -w ' id < 10000 and logintime < unix_timestamp('2014-06-01') ' mydb mytable > mydump.sql
這樣的話,結(jié)果條件會(huì)被解析成:
WHERE id < 10000 and logintime < unix_timestamp(2014-06-01)
眼尖的同學(xué)會(huì)發(fā)現(xiàn),時(shí)間條件變成了:
WHERE id < 10000 and logintime < unix_timestamp(2014-06-01)
也就是變成了:
unix_timestamp(2007)
這和我們?cè)鹊脑O(shè)想大相徑庭,因此一定要謹(jǐn)慎
相關(guān)文章
MySQL中列如何以逗號(hào)分隔轉(zhuǎn)成多行
這篇文章主要介紹了MySQL中列如何以逗號(hào)分隔轉(zhuǎn)成多行問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02Mysql使用sum()函數(shù)返回null的問題詳解
MySQL的Sum()函數(shù)是用來找出所有記錄的一個(gè)字段的總和,下面這篇文章主要給大家介紹了關(guān)于Mysql使用sum()函數(shù)返回null的問題,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-01-01mysql中g(shù)eneral_log日志知識(shí)點(diǎn)介紹
這篇文章主要介紹了mysql中g(shù)eneral_log日志知識(shí)點(diǎn)的介紹以及其他相關(guān)內(nèi)容,以后興趣的朋友們學(xué)習(xí)下。2019-08-08真的了解MySQL中的binlog和redolog區(qū)別
MySQL的binlog和redolog都是用于記錄數(shù)據(jù)庫操作的日志文件,但是它們有不同的作用和特點(diǎn),今天給大家分享MySQL的binlog和redolog區(qū)別,感興趣的朋友一起看看吧2023-11-11