在使用mysql數據庫時,經常需要備份和恢復數據庫,通過導出sql文件備份和直接執行sql文件恢復是非常便捷的方式。本篇文章主要介紹如何對mysql數據庫通過cmd命令導出和導入sql文件。
導出
一、導出數據庫
包含數據對象和數據
mysqldump?-hhostname?-uusername?-ppassword?databasename?>?/home/justin/databasename.sql
二、導出數據庫表結構
只有數據庫表結構
mysqldump?-hhostname?-uusername?-ppassword?-d?databasename?>?/home/justin/databasename.sql
三、導出存儲過程及函數
-
1、查詢數據庫中的存儲過程和函數
方法一:
select?`name`?from?mysql.proc?where?db?=?'databasename'?and?`type`?=?'PROCEDURE';?--?存儲過程 select?`name`?from?mysql.proc?where?db?=?'databasename'?and?`type`?=?'FUNCTION';?--?函數
方法二:
show?procedure?status; show?function?status;
-
2、mysql導出存儲過程及函數
mysqldump?-hhostname?-uusername?-ppassword?-ntd?-R?databasename?>?/home/justin/prorandfunc.sql
參數說明
-d?結構(--no-data:不導出任何數據,只導出數據庫表結構) -t?數據(--no-create-info:只導出數據,而不添加CREATE?TABLE?語句) -n?(--no-create-db:只導出數據,而不添加CREATE?DATABASE?語句) -R?(--routines:導出存儲過程以及自定義函數) -E?(--events:導出事件) --triggers?(默認導出觸發器,使用--skip-triggers屏蔽導出) -B?(--databases:導出數據庫列表,單個庫時可省略) --tables?表列表(單個表時可省略) ①同時導出結構以及數據時可同時省略-d和-t ②同時?不?導出結構和數據可使用-ntd ③只導出存儲過程和函數可使用-R?-ntd ④導出所有(結構&數據&存儲過程&函數&事件&觸發器)使用-R?-E(相當于①,省略了-d?-t;觸發器默認導出) ⑤只導出結構&函數&事件&觸發器使用?-R?-E?-d
導入
1、首先建空數據庫
mysql>create?database?test;
2、導入數據庫
? 方法一:
? (1)選擇數據庫
????mysql>use?test;
(2)設置數據庫編碼
????mysql>set?names?utf8;
(3)導入數據(注意sql文件的路徑)
????mysql>source?/home/justin/test.sql;
方法二:
mysql?-hhostname?-uusername?-ppassword?abc?<p>相關推薦:</p><p><a href="http://www.php.cn/php-notebook-164317.html" target="_self">php 用命令行導出和導入MySQL數據庫,命令行mysql</a></p><p><a href="http://www.php.cn/php-notebook-164317.html" target="_self">php 用命令行導出和導入MySQL數據庫,命令行mysql</a></p><p><a href="http://www.php.cn/php-notebook-164317.html" target="_self">php 用命令行導出和導入MySQL數據庫,命令行mysql</a></p>
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END