2014-02-24 27 views
3

我有我叫test_proc1test_proc2。我數據庫兩個程序要導出的這兩個程序的代碼,但我發現導出的文件包含什麼,我不知道why.Below是詳細我的問題的描述:如何轉儲所有的功能和程序(不包括表)在MySQL?

程序的1.Code test_proc1

DELIMITER $$ 

USE `testmanagementb`$$ 

DROP PROCEDURE IF EXISTS `test_proc1`$$ 

CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc1`() 
BEGIN 
    SELECT * FROM system_users; 
    END$$ 

DELIMITER ; 

程序的2.Code test_proc2:用於導出程序

DELIMITER $$ 

USE `testmanagementb`$$ 

DROP PROCEDURE IF EXISTS `test_proc2`$$ 

CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc2`() 
BEGIN 
     SELECT * FROM testcase_node; 
    END$$ 

DELIMITER ; 

3.命令(數據庫名稱爲testmanagementb):

mysqldump -u root -p -ntdR testmanagementb > procs.sql

4.導出結果列表如下:

-- MySQL dump 10.11 
-- 
-- Host: localhost Database: testmanagementb 
-- ------------------------------------------------------ 
-- Server version 5.0.51b-community-nt 

/*!40101 SET @[email protected]@CHARACTER_SET_CLIENT */; 
/*!40101 SET @[email protected]@CHARACTER_SET_RESULTS */; 
/*!40101 SET @[email protected]@COLLATION_CONNECTION */; 
/*!40101 SET NAMES utf8 */; 
/*!40103 SET @[email protected]@TIME_ZONE */; 
/*!40103 SET TIME_ZONE='+00:00' */; 
/*!40014 SET @[email protected]@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; 
/*!40014 SET @[email protected]@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; 
/*!40101 SET @[email protected]@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; 
/*!40111 SET @[email protected]@SQL_NOTES, SQL_NOTES=0 */; 

-- 
-- Dumping routines for database 'testmanagementb' 
-- 
DELIMITER ;; 
/*!50003 DROP PROCEDURE IF EXISTS `test_proc1` */;; 
/*!50003 SET SESSION SQL_MODE=""*/;; 
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `test_proc1`() 
BEGIN 
    select * from system_users; 
    END */;; 
/*!50003 SET SESSION [email protected]_SQL_MODE*/;; 
/*!50003 DROP PROCEDURE IF EXISTS `test_proc2` */;; 
/*!50003 SET SESSION SQL_MODE=""*/;; 
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`localhost`*/ /*!50003 PROCEDURE `test_proc2`() 
BEGIN 
     select * from testcase_node; 
    END */;; 
/*!50003 SET SESSION [email protected]_SQL_MODE*/;; 
DELIMITER ; 
/*!40103 SET [email protected]_TIME_ZONE */; 

/*!40101 SET [email protected]_SQL_MODE */; 
/*!40014 SET [email protected]_FOREIGN_KEY_CHECKS */; 
/*!40014 SET [email protected]_UNIQUE_CHECKS */; 
/*!40101 SET [email protected]_CHARACTER_SET_CLIENT */; 
/*!40101 SET [email protected]_CHARACTER_SET_RESULTS */; 
/*!40101 SET [email protected]_COLLATION_CONNECTION */; 
/*!40111 SET [email protected]_SQL_NOTES */; 

-- Dump completed on 2014-02-24 6:03:25 

我的問題是:爲什麼在步驟4中導出的文件包含什麼?有什麼錯誤的,我export命令?

+0

您文件包含'存儲procedure'問題是什麼? –

+0

@AbdulManaf,是的它包含'存儲過程',但正如你可以看到所有的程序都註釋了,所以導出文件是沒用的,這是我的問題! – lucumt

回答

0

可以使用mysqldump不表結構/數據,併爲其他選項轉儲,下面是語法

mysqldump -uroot -p --routines --no-create-info --no-data --no-create-db world_copy > outputfile.sql 
+0

我剛剛完成了我的問題,您能否閱讀並給我一些建議?請提前致謝! – lucumt