在数据库备份和导出中,我得到如下信息:
/*!50001 DROP TABLE `vTime`*/;
/*!50001 DROP VIEW IF EXISTS `vTime`*/;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`db_user`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `vTime` AS select ... */;
mysqldump
只做一个简单的CREATE VIEW
? /*!50001
部分是什么意思? 编辑:我应该补充一点,这是我得到的错误:
#1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation
编辑2:似乎只有
/*!50013 DEFINER=
部分失败了。 最佳答案
/*!50001部分是版本号。
这个问题已经在这里回答:MySQL flags in dumps
删除DEFINER的主要问题最好是使用脚本来完成。一些已经在线的示例:
https://dbperf.wordpress.com/2010/04/12/removing-definer-from-mysql-dump/
Remove DEFINER clause from MySQL Dumps
关于没有 "CREATE ALGORITHM"和 "DEFINER"的mysqldump,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25924796/