標籤:
比如我們要備份mysql中已經存在的名為linux的資料庫,要用到命令mysqldump
命令格式如下:
[[email protected] root]# mysqldump -u root -p linux > /root/linux.sql
Enter password:在這裡輸入資料庫的密碼
通過上面的命令,我們要明白兩件事,首先備份資料庫是要以資料庫管理員的身份備份;其次:備份目的地是/root,備份的檔案名稱是linux.sql。其實備份的位置和檔案名稱,根據自己的情況來定。檔案名稱可以自己來取,路徑也可以自己來安排;
比如我想把linux的Database Backup到/home/beinan,資料庫的檔案名稱為linuxsir031130.sql,所以應該輸入如下的命令。
[[email protected] root]#mysqldump -u root -p linux > /home/beinan/linuxsir031130.sql
Enter password:在這裡輸入資料庫管理員root的資料庫密碼
如果資料量大會佔用很大空間,這時可以利用gzip壓縮資料,命令如下:
#mysqldump -u root -p tm | gzip > tm_050519.sql.gz
這樣我們到/home/beinan目錄下就能發現mysql中名為linux的資料庫的備份檔案linuxsir031130.sql
綜上所述,我們學習時要學會變通。
恢複:
首先我們還是要操作上面幾個過程,比如添加資料庫管理員(如果您沒有添加過mysql資料庫管理員的話),建立資料庫等。
比如我們要把在/home/beinan這個目錄中的linuxsir031130.sql這個備份,匯入名為linux的資料庫中,應該如下操作;
[[email protected] root]#mysql -u root -p linux < /home/beinan/linuxsir031130.sql
Enter password:在這裡輸入密碼
如果機器好,資料庫比較小,幾分鐘就好了。
如何匯出資料庫表的資料?(不同於備份哦)
#mysql
(#mysql>use linux;)#可有可無
#mysql>select * from linux.table-name into outfile "/home/table-name.txt";
#/home/table-name.txt 可能會報錯,如果這樣去掉/home直接"table-name.txt"
預設儲存在/var/lib/mysql/table-name.txt
對mysql資料庫常用命令的一點補充;
幾個常用的mysql相關的管理命令
mysql 命令:基本文本的,顯示和使用的mysql資料庫。前面已經簡單的提過用法;比如登入等。
mysqladmin 命令,用來建立和維護mysql資料庫的命令,前面已經簡單的提過;
isamchk 是用來修複、檢查和最佳化.ism尾碼的資料庫檔案;
mysqldump 是用於備份資料庫,前面已經簡單的說明過;
myisamchk 用來修複.myi尾碼的資料庫檔案;
比如我們要檢查名為linux的資料庫.myi資料庫表是否存在問題,應該用下面的命令;
要把mysqld伺服器停下來
[[email protected] root]# /opt/mysql/share/mysql.server stop
然後執行
[[email protected] root]# /opt/mysql/bin/myisamchk /opt/mysql/var/linux/*.MYI
上面的命令的意思就是檢查所有的.myi檔案,資料庫的目錄在/opt/mysql/var/linux/目錄中
如果有問題,應該用-r參數來修複
[[email protected] root]# /opt/mysql/bin/myisamchk -r /opt/mysql/var/linux/*.MYI
7]mysqlshow 命令:顯示使用者選擇的資料庫和表
[[email protected] root]# /opt/mysql/bin/mysqlshow -uroot -p [資料庫名]
比如我要查看名為linux的資料庫;應該是:
[[email protected] root]# /opt/mysql/bin/mysqlshow -uroot -p linux
Linux下mysql備份 恢複