Tag: mysqldump

#1071 – 指定的密钥太长; 最大密钥长度是1000字节

我知道这个标题的问题已经被回答了,但请继续阅读。 在发布之前,我已经详细阅读了关于此错误的所有其他问题/答案。 我得到以下查询的上述错误: CREATE TABLE IF NOT EXISTS `pds_core_menu_items` ( `menu_id` varchar(32) NOT NULL, `parent_menu_id` int(32) unsigned DEFAULT NULL, `menu_name` varchar(255) DEFAULT NULL, `menu_link` varchar(255) DEFAULT NULL, `plugin` varchar(255) DEFAULT NULL, `menu_type` int(1) DEFAULT NULL, `extend` varchar(255) DEFAULT NULL, `new_window` int(1) DEFAULT NULL, `rank` int(100) DEFAULT NULL, `hide` int(1) DEFAULT NULL, `template_id` int(32) unsigned DEFAULT […]

将所有的MySQL表自动转储到单独的文件?

我想把每个mysql表转储到单独的文件。 手册指出这是这样的语法 mysqldump [options] db_name [tbl_name …] 这表示您事先知道表名。 我可以设置知道每个表名的脚本,但是说我在路上添加一个新表,并忘记更新转储脚本。 然后我丢失一个或多个表的转储。 有没有办法自动将每个现有的表转储到一个单独的文件? 或者我将不得不做一些剧本; 查询数据库,获取所有的表名,并通过名称转储它们。 如果我去脚本fu路由,什么脚本语言可以访问mysql数据库?

Mysqldump:备份时为插入创build列名

如何指示mysqldump在插入语句中使用列名进行备份? 在我的情况下,我没有正常备份与插入SQL的结果 LOCK TABLES `users` WRITE; /*!40000 ALTER TABLE `users` INSERT INTO `users` VALUES (1 结构体。 现在我继续从用户的模式中删除一列 。 之后,当我运行备份SQL的我得到一个列号不匹配错误 。 为了解决这个问题,我该如何去指导mysqldump写列名呢? 这是我现在怎么做的 mysqldump –host=${dbserver} –user=${dbusername} –password=${dbpassword} \ –no-create-db –no-create-info –extended-insert –single-transaction \ –compress tablename 在更广泛的层面上,pipe理这些模式更改的最佳做法是什么?

我怎样才能减慢MySQL转储,以不影响服务器上的当前负载?

虽然做一个MySQL转储很容易,我有一个现场专用的MySQL服务器,我想要设置复制。 要做到这一点,我需要转储的数据库导入到我的复制奴隶。 问题出现在我做转储的时候,MySQL对它充满了强制性,并将资源绑定到连接到它的站点上。 我想知道是否有一种方法来限制转储查询到一个低优先级的状态,哪个偏好给活连接? 这个想法是,来自外部网站的负载不受MySQL完成转储工作的影响。

如何用触发器和程序导出MySQL数据库?

如何导出/转储mysql数据库与所有触发器和过程。

如何使用mysqldump作为表的一部分?

所以我只能导出这样的表格: mysqldump -u root -p db_name table_name > table_name.sql 有没有办法导出只有一部分表与mysqldump? 例如,0 – 1000000行,1000000 – 2000000行等 我应该使用mysqldump还是查询来做到这一点?

如何处理由mysqldump创build的巨大的行长度

我在cron作业中使用mysqldump来备份超过200万行的数据库。 它创build一个文本文件,可用于从命令行恢复数据logging。 我认为在还原之前编辑转储是一个很有用的方法,可以快速改变值和表或列名 – 至less直到我学到更多东西,并且对使用ALTER和UPDATE做更有信心。 编辑大型文本文件并不困扰我,但是我惊奇地发现,在250兆字节的数据库转储中, 只有大约300行 。 每一行都是800k字符长。 是否有另一种方式来产生更多的控制行长的转储? 还是应该用sed或Perl等工具后处理转储?

从–all-databases转储导入单个数据库

可以从–all-databases mysqldump中导入单个数据库吗? 我想我可以手动修改文件,但想知道是否有任何命令行选项来做到这一点。 我正在移动服务器,并有许多数据库,其中大部分我目前不需要或想要,但如果需要的话,想要恢复单个数据库。

如何从远程机器使用MySQL转储

如何备份在远程服务器上运行的mysql数据库,我需要将备份文件存储在本地计算机上。

如何从MySQL只转储特定的表?

如果我的数据库有10个表,我只想转储3个表,是否有可能与mysqldump命令?