MySQL作為一種關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),備份是非常必要的。在備份中,有時(shí)我們需要備份帶橫杠的庫(kù)。下面,我們來(lái)詳細(xì)了解一下如何備份帶橫杠的庫(kù)。
在MySQL備份帶橫杠的庫(kù)前,我們需要先了解一下橫杠的含義。橫杠在MySQL中有著特殊的含義,它表示一個(gè)負(fù)號(hào),因此,如果使用默認(rèn)的備份命令備份帶橫杠的庫(kù),會(huì)出現(xiàn)錯(cuò)誤。
shell>mysqldump -u root -p dbname >dbname-2018-05-10.sql -bash: syntax error near unexpected token `('
因此,我們需要在備份命令中使用引號(hào)或者反斜杠來(lái)避免橫桿被MySQL解釋為負(fù)號(hào)。
shell>mysqldump -u root -p dbname >"dbname-2018-05-10.sql" shell>mysqldump -u root -p dbname >dbname\-2018-05-10.sql
通過(guò)以上兩種方式,可以成功備份帶橫杠的庫(kù)。當(dāng)然,我們也可以使用MySQL提供的命令來(lái)備份帶橫杠的庫(kù)。
shell>mysql -u root -p -e "mysqldump dbname" >dbname-2018-05-10.sql
在MySQL備份后,我們也需要注意一下恢復(fù)的問(wèn)題。當(dāng)我們要將備份的數(shù)據(jù)恢復(fù)到MySQL服務(wù)器中時(shí),我們需要指定使用帶橫杠的庫(kù)名。
mysql>use dbname-2018-05-10; mysql>source dbname-2018-05-10.sql;
通過(guò)以上步驟,便可以成功備份和恢復(fù)帶橫杠的庫(kù)。在備份時(shí),我們需要注意橫杠的含義,并且在備份命令中正確使用引號(hào)或者反斜杠來(lái)避免出現(xiàn)錯(cuò)誤。在恢復(fù)數(shù)據(jù)時(shí),我們需要使用正確的庫(kù)名來(lái)指定需要恢復(fù)的數(shù)據(jù)庫(kù)。