本帖最后由 totola147 于 2013-08-09 10:51:46 编辑

解决方案 »

  1.   

    使用  “ mysqldump -h  -u  -p  -ntd  -R  db_name >db_name.sql ”,第一次导出时注意触发器,存储过程,函数的权限(所有者),导出后注意如果可以的话,建议将权限(所有者)更改为同一个人(就直接将所有的权限(DEFINER=`root`@`localhosl`) 信息替换为空 ) 或使用phpmyadmin数据库可视化工具导出,注意要记得将 “ 添加 CREATE PROCEDURE / FUNCTION / EVENT ”前面的复选框选中 !
      

  2.   


    对不起,刚开始学习使用mysql  不知道怎样查看所有数据库对象的所有者以及权限
      

  3.   


    恩,我想问题可能就出在 definer那部分了
    这是其中的一部分
    /*!50003 CREATE*/ /*!50017 DEFINER=`root`@`localhost`*/ /*!50003 trigger Trig_AskHelpInsert after insert ON `AskHelp` for each row begin
    update UserDetail set coin=coin - new.costScore where userID = new.userID; 
    insert into Token(userID,value,changeType,operateDate,operationInfo) values(new.userID,-new.costScore,'AskHelp',now(),new.askhelpID); 
      end */;;我想请教一下  这里的/*!的注释是什么意思,还有50017
      

  4.   

    mysql 注释解释详见 
    http://blog.csdn.net/jenminzhang/article/details/8627106    
      

  5.   

    /*!50001 DROP TABLE IF EXISTS `count_yysbh`*/;      50001表示假如 数据库版本是5.00.01以上版本,“DROP TABLE IF EXISTS `count_yysbh”才会被执行