Tag: mysqldump

从.frm文件恢复mysql数据库

我每个星期都把我所有的桌子都扔掉了。 但后来我明白,它只存储表的.frm文件。 它没有显示表格的.MYD和.MYI文件。 所以我只有我的数据库我的.frm文件,而且mydatabase是innodb。 那么我可以用数据库中的数据来获取我的数据库吗?

mysqldump –password是否真的做到了这一点?

我试图使用mysqldump来转储一个模式,它大部分工作,但我碰到一个好奇心-p或–password选项似乎是做一些事情之外的设置密码( man页和–help输出说应该)。 具体来说,它看起来像这里所做的: http : //snippets.dzone.com/posts/show/360 – 即设置数据库转储。 为了支持我有点古怪的说法,我可以告诉你,如果我没有指定–password (或-p )选项,那么这个命令会打印使用语句并退出并显示一个错误。 如果我指定了它,系统会立即提示input密码(!),然后转储在–password选项中指定的数据库(或者在通常情况下给出的错误是密码不匹配任何数据库名称指定)。 这是一个成绩单: $ mysqldump -utesting-h myhost – 无数据–tables – 密码丢失 input密码: – MySQL转储10.10 mysqldump:有错误:1044:访问拒绝用户'testing'@'%'到 数据库在select数据库时会“丢失” 那么,是什么给了? 这是这样的工作方式吗? 这肯定不会有意义,也不符合官方文件。 最后,如果这只是它的工作方式,我该如何指定在自动化作业中使用的密码? 使用expect ? 我使用的是mysqldump Ver 10.10 Distrib 5.0.22, for pc-linux-gnu (i486) 。

mysqldump问题:“–defaults-extra-file”选项没有按预期工作

我从Windows命令行运行以下命令来备份我的数据库: …\right_path\mysqldump –add-drop-database –databases my_database_name –defaults-extra-file=d:\1.cnf 其中d:\1.cnf包含以下内容: [client] user="my_user" password="my_password" 不幸的是,我收到以下错误信息: mysqldump: unknown variable 'defaults-extra-file=d:\1.cnf' 如果我做: …\right_path\mysqldump –add-drop-database –databases my_database_name –user="my_user" –password="my_password" 它按预期工作。 我究竟做错了什么 ?

使用mysqldump来格式化每行一个插入?

这已被问了几次,但我找不到解决我的问题。 基本上,当使用mysqldump(这是MySQL Workbenchpipe理工具的内置工具)使用扩展插入转储数据库时,会得到大量的长数据。 我明白为什么这样做,因为它通过插入数据作为一个命令(特别是在InnoDB上)来加速插入,但格式化使得真正难以在转储文件中查看数据,或者使用diff工具比较两个文件如果您将它们存储在版本控制等。在我的情况下,我将它们存储在版本控制中,因为我们使用转储文件来跟踪我们的集成testing数据库。 现在我知道我可以closures扩展插入,所以我会得到一个插入每行,这工作,但任何时候你用转储文件进行恢复,它会变慢。 我的核心问题是,在转储文件时,我们曾经使用过的旧的工具(MySQL Administrator),它基本上做了同样的事情,但是它规定INSERT语句每行放置一个插入,而仍然进行批量插入。 所以,而不是这个: INSERT INTO `coupon_gv_customer` (`customer_id`,`amount`) VALUES (887,'0.0000'),191607,'1.0300'); 你得到这个: INSERT INTO `coupon_gv_customer` (`customer_id`,`amount`) VALUES (887,'0.0000'), (191607,'1.0300'); 无论我尝试什么select,似乎都没有办法像这样得到一个转储,这真是两全其美。 是的,它需要更多的空间,但是在需要人类阅读文件的情况下,这使得它更加有用。 我错过了什么,有没有办法用MySQLDump来做到这一点,或者我们都倒退了,旧的(现在不推荐使用的)MySQLpipe理员工具中的这个function已经不可用了?

Mysqldump以CSV格式

我需要以CSV格式转储mysql中的所有表。 是否有一个命令使用mysqldump来只输出CSV格式的每一个表的每一行?

mysqldump只导出一个表

我正在使用mysqldump导出数据库,如下所示: mysqldump -u root -ppassword my_database > c:\temp\my_database.sql 不知何故,它只导出一个表。 有什么我做错了吗?

如何在Windows Vista中将mysqldump .sql文件加载到MySQL数据库中

我试图将一个MySQL数据库从一台Linux机器迁移到一台运行Windows Vista的机器上。 使用mysqldump,我已经获得了一个.sql文件,我已经移到了Windows机器上。 下一步是什么? 如果我正在转移到另一台Linux机器上,可以这样做: mysql -u username -p databasename < dumpfile.sql 有没有人知道从Windows命令行工作的类似的调用? 还是有工具来完成这个? 当我从Windows命令行尝试这种types的命令时,我得到: 'mysql' is not recognized as an internal or external command 我也试过: mysql> source C:\Stuff\dumpfile.sql 这给了: Failed to open file 'C:\Stuff\dumpfile.sql', error: 2

mysqldump&gzip命令使用crontab正确地创build一个MySQL数据库的压缩文件

我有问题得到一个crontab的工作。 我想自动化MySQL数据库备份。 设置: Debian GNU / Linux 7.3(wheezy) MySQL服务器版本:5.5.33-0 + wheezy1(Debian) 目录用户,备份和备份2有755许可 MySQL db和Debian帐户的用户名是相同的 从shell这个命令的作品 mysqldump -u user -p[user_password] [database_name] | gzip > dumpfilename.sql.gz 当我使用crontab -e将其放在crontab中时 * * /usr/bin/mysqldump -u user -pupasswd mydatabase | gzip> /home/user/backup/mydatabase-backup-`date +\%m\%d_\%Y`.sql.gz >/dev/null 2>&1 / home / user / backup目录中每分钟创build一个文件,但有0个字节。 但是,当我将这个输出redirect到第二个目录backup2时,我注意到已经正确压缩的mysqldumpfile被创build了。 我无法弄清楚我在第一个目录中的0字节文件和第二个目录中的预期输出结果是什么错误。 * * /usr/bin/mysqldump -u user -pupasswd my-database | […]

mysqldump由cron和密码安全启动

我写了一个脚本来备份我的MySQL数据库,使用: mysqldump –opt –all-databases -u user -pmypassword > myDump.sql 一个cron每晚都会启动它,并将结果传给另一台服务器。 mypassword在我的脚本中显示清楚,每个人都可以看到它的适当的权利。 我也被告知/ proc问题(cmd运行可以看到)。 MySQL文档说: 在命令行上指定密码应被视为不安全。 请参阅第7.6节“确保您的密码安全”。 我还没有find这个神奇的7.6节。 什么是处理自动mysqldump和密码安全性的好习惯?

转储文件MySQL 5.6.10

我试图从我的MySQL数据库创build一个转储文件,但是当我尝试它总是给我这个错误 操作失败,退出代码2 16:06:07 Dumping proactivetraindb (userstate) Running: mysqldump.exe –defaults-extra-file="h:\docume~1\anarita\locals~1\temp\tmpde5rwy.cnf" –user=root –max_allowed_packet=1G –host=localhost –port=3306 –default-character-set=utf8 "proactivetraindb" "userstate" mysqldump: Couldn't execute 'SET OPTION SQL_QUOTE_SHOW_CREATE=1': You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_QUOTE_SHOW_CREATE=1' at line 1 (1064) MySQl的版本是5.6.10,但MySQLDump的版本是5.5.16 有人知道如何解决这个问题吗?