MySQL中mysqldum数据库的备份和恢复

在mysql中自带了 mysqldum命令可直接能数据库进行备份和恢复操作,下面我来详细的介绍关于MySQL中mysqldum命令的用法。

1、mysqldump
1.1 备份
mysqldump 是采用SQL级别的备份机制,它将数据表导成 SQL 脚本文件,在不同的 MySQL 版本之间升级时相对比较合适,这也是最常用的备份方法。现在来讲一下 mysqldump 的一些主要参数:

•–compatible=name
它告诉 mysqldump,导出的数据将和哪种数据库或哪个旧版本的 MySQL 服务器相兼容。值可以为 ansi、mysql323、mysql40、postgresql、oracle、mssql、db2、maxdb、no_key_options、no_tables_options、no_field_options 等,要使用几个值,用逗号将它们隔开。当然了,它并不保证能完全兼容,而是尽量兼容。

•–complete-insert,-c
导出的数据采用包含字段名的完整 INSERT 方式,也就是把所有的值都写在一行。这么做能提高插入效率,但是可能会受到 max_allowed_packet 参数的影响而导致插入失败。因此,需要谨慎使用该参数,至少我不推荐。

•–default-character-set=charset
指定导出数据时采用何种字符集,如果数据表不是采用默认的 latin1 字符集的话,那么导出时必须指定该选项,否则再次导入数据后将产生乱码问题。

•–disable-keys
告诉 mysqldump 在 INSERT 语句的开头和结尾增加 /*!40000 ALTER TABLE table DISABLE KEYS */; 和 /*!40000 ALTER TABLE table ENABLE KEYS */; 语句,这能大大提高插入语句的速度,因为它是在插入完所有数据后才重建索引的。该选项只适合 MyISAM 表。

•–extended-insert = true|false
默认情况下,mysqldump 开启 –complete-insert 模式,因此不想用它的的话,就使用本选项,设定它的值为 false 即可。

•–hex-blob
使用十六进制格式导出二进制字符串字段。如果有二进制数据就必须使用本选项。影响到的字段类型有 BINARY、VARBINARY、BLOB。

•–lock-all-tables,-x
在开始导出之前,提交请求锁定所有数据库中的所有表,以保证数据的一致性。这是一个全局读锁,并且自动关闭 –single-transaction 和 –lock-tables 选项。

•–lock-tables
它和 –lock-all-tables 类似,不过是锁定当前导出的数据表,而不是一下子锁定全部库下的表。本选项只适用于 MyISAM 表,如果是 Innodb 表可以用 –single-transaction 选项。

•–no-create-info,-t
只导出数据,而不添加 CREATE TABLE 语句。

•–no-data,-d
不导出任何数据,只导出数据库表结构。

•–opt
这只是一个快捷选项,等同于同时添加 –add-drop-tables –add-locking –create-option –disable-keys –extended-insert –lock-tables –quick –set-charset 选项。本选项能让 mysqldump 很快的导出数据,并且导出的数据能很快导回。该选项默认开启,但可以用 –skip-opt 禁用。注意,如果运行 mysqldump 没有指定 –quick 或 –opt 选项,则会将整个结果集放在内存中。如果导出大数据库的话可能会出现问题。

•–quick,-q
该选项在导出大表时很有用,它强制 mysqldump 从服务器查询取得记录直接输出而不是取得所有记录后将它们缓存到内存中。

•–routines,-R
导出存储过程以及自定义函数。

•–single-transaction
该选项在导出数据之前提交一个 BEGIN SQL语句,BEGIN 不会阻塞任何应用程序且能保证导出时数据库的一致性状态。它只适用于事务表,例如 InnoDB 和 BDB。本选项和 –lock-tables 选项是互斥的,因为 LOCK TABLES 会使任何挂起的事务隐含提交。要想导出大表的话,应结合使用 –quick 选项。

•–triggers
同时导出触发器。该选项默认启用,用 –skip-triggers 禁用它。

其他参数详情请参考手册,我通常使用以下 sql 来备份 myisam 表:

 代码如下复制代码 /usr/local/mysql/bin/mysqldump -uyejr -pyejr –default-character-set=utf8 –opt –extended-insert=false
–triggers -R –hex-blob -x db_name > db_name.sql

使用以下 SQL 来备份 Innodb 表:

 代码如下复制代码

/usr/local/mysql/bin/mysqldump -uyejr -pyejr –default-character-set=utf8 –opt –extended-insert=false
–triggers -R –hex-blob –single-transaction db_name > db_name.sql

打开开始->运行->输入cmd进入命令行模式

 代码如下复制代码

c:>mysqldump -h localhost -u root -p mydb >e:mysqlmydb.sql

然后输入密码,等待一会导出就成功了,可以到目标文件中检查是否成功。

2.将数据库mydb中的mytable导出到e:mysqlmytable.sql文件中:

 代码如下复制代码

c:>mysqldump -h localhost -u root -p mydb mytable >e:mysqlmytable.sql

3.将数据库mydb的结构导出到e:mysqlmydb_stru.sql文件中:

 代码如下复制代码

c:>mysqldump -h localhost -u root -p mydb –add-drop-table >e:mysqlmydb_stru.sql

//-h localhost可以省略,其一般在虚拟主机上用

1.2 还原

用 mysqldump 备份出来的文件是一个可以直接倒入的 SQL 脚本,有两种方法可以将数据导入。

从外部文件导入数据到数据库:
例如:

 代码如下复制代码

/usr/local/mysql/bin/mysql -uyejr -pyejr db_name

从e:mysqlmydb2.sql中将文件中的SQL语句导入数据库中:

 代码如下复制代码

c:>mysql -h localhost -u root -p mydb2

•用 SOURCE 语法

其实这不是标准的 SQL 语法,而是 mysql 客户端提供的功能,例如:

SpeakingPass-打造你的专属雅思口语语料 SpeakingPass-打造你的专属雅思口语语料

使用chatGPT帮你快速备考雅思口语,提升分数

SpeakingPass-打造你的专属雅思口语语料 25 查看详情 SpeakingPass-打造你的专属雅思口语语料  代码如下复制代码

SOURCE /tmp/db_name.sql;

这里需要指定文件的绝对路径,并且必须是 mysqld 运行用户(例如 nobody)有权限读取的文件。

进入mysql数据库控制台 : 如 mysql -u root -p

 代码如下复制代码

mysql>use databasename

然后使用source命令,后面参数为脚本文件(这里用到的是.sql)

 代码如下复制代码

mysql>source d:mydb.sql

然后输入密码,就OK了

二.命令行进入MYSQL的方法:

 代码如下复制代码

C:>mysql -h hostname -u username -p

按ENTER键,等待然后输入密码,这里hostname为服务器的名称,如localhost,username为MYSQL的用户名,如root.进入命令行就可以直接操作MYSQL了。

关于导入文件大小限制问题的解决:

默认情况下:mysql对导入的文件大小有限制的,最大为2M,所以当文件很大时,直接无法导入,解决列举如下:

1.在php.ini中修改相关参数:

影响Mysql导入文件大小的参数有三个:

 代码如下复制代码

memory_limit=128M, upload_max_filesize=2M, post_max_size=8M

修改upload_max_filesize=200M这里修改满足你需要的大小,可以同时修改其他两项memory_limit=250M ,post_max_size=200M.这样就可以导入200M以下的.sql文件了。

上文是把mysql放置在系统路径下,其实不放也可以。如我的mysql安装目录为D:MySQL Server 5.0;则首先打开dos窗口,然后输入D:(没有”)回车;此时应该会出现D:>这样的标志,然后在其后输入D:MySQL Server 5.0bin回车;出现D:MySQL Server 5.0bin>接着输入mysqldump -u root -p 数据库名 >数据库名.sql(也可以输入路径); (具体参照上面)导入文件同样,只是改了’>’为’

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/488090.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Python执行字符串表达式方法
上一篇 2025年11月8日 14:28:31
鸣潮2.2版本椿值得抽吗 新版本5星角色椿抽取建议
下一篇 2025年11月8日 14:28:41

相关推荐

  • ThinkPHP6数据备份与恢复:保障数据的安全性

    ThinkPHP6数据备份与恢复:保障数据的安全性 随着互联网的快速发展,数据已成为一项极其重要的资产。因此,数据的安全性备受关注。在Web应用开发中,数据备份与恢复是确保数据安全的重要一环。在本文中,我们将介绍如何使用ThinkPHP6框架进行数据备份与恢复,以保障数据的安全性。 一、数据备份数据…

    2026年9月8日
    000
  • 苹果手机如何恢复误删的视频

    误删苹果手机视频可找回,优先检查“最近删除”相簿,30天内可恢复;若开启iCloud照片,可通过iCloud下载;有电脑备份可用iTunes/Finder恢复;最后可尝试专业软件扫描残留数据。 苹果手机误删了视频别着急,大部分情况下都能找回。关键是要尽快行动,并根据你是否做过备份选择合适的方法。 一…

    2026年9月8日
    000
  • mysql中事务提交对binlog记录的影响

    事务提交后才会写入binlog,确保主从复制和数据恢复的一致性;未提交事务不记录,ROLLBACK则无任何binlog输出。 在MySQL中,事务提交与binlog记录之间存在紧密的关联。只有当事务成功提交时,对应的SQL操作才会被写入binlog(二进制日志),这是保证数据一致性和主从复制正常工作…

    2026年9月8日
    000
  • 数据备份可分为哪些类型

    数据备份可分为:热备份、冷备份和温备份。热备份可以在数据库运行中直接备份,对正在运行的数据库操作没有任何的影响。冷备份必须在数据库停止的情况下进行备份,数据库的读写操作不能执行。温备份在数据库运行中进行,备份时仅支持读操作,不支持写操作。 本教程操作环境:Windows7系统、Dell G3电脑。 …

    2026年9月6日
    000
  • XP系统备份在c盘的文件怎么恢复?

    XP系统备份在c盘的文件怎么恢复?XP系统备份在c盘的文件怎么恢复?XP系统备份在c盘的文件怎么恢复?XP系统备份在c盘的文件怎么恢复?

    c盘作为计算机硬盘的主要分区之一,通常是操作系统及各类软件的默认安装位置。许多用户也会选择将重要文件备份至c盘,以避免因意外情况导致的数据丢失。那么,当备份在c盘的文件出现问题时,该如何恢复并正常打开它们呢?以下内容将为您详细介绍如何找回c盘中的文件。 为了避免由于误操作或其他原因(如硬件故障或存储…

    2026年9月6日 用户投稿
    300
  • 如何使用Webman框架实现数据备份和容灾功能?

    如何使用webman框架实现数据备份和容灾功能? 引言:在当今的互联网时代中,数据备份和容灾功能已经成为了每个网站必备的功能之一。为了保障数据的安全性和可用性,我们需要使用一种可靠的框架来实现数据备份和容灾功能。本文将介绍如何使用Webman框架来实现这一目标,并给出相应的代码示例。 一、了解Web…

    用户投稿 2026年9月5日
    400
  • 夸克网盘如何恢复误删文件 夸克网盘回收站机制的应急使用手册

    误删文件后可通过回收站恢复,检查文件恢复服务设置,利用历史版本功能,联系官方客服或使用专业软件找回数据。 立即进入“☞☞☞☞☞点击夸克资源搜索引擎链接☜☜☜☜☜”; 立即进入“☞☞☞☞☞点击夸克资源网APP直达☜☜☜☜☜”; 如果您在使用夸克网盘时误删了重要文件,不必过于惊慌。大多数情况下,被删除的…

    2026年9月4日
    500
  • win10怎么检查磁盘错误_win10磁盘错误检查与修复方法

    1、通过“此电脑”属性中的“工具”选项卡使用错误检查功能可快速修复文件系统逻辑错误;2、使用管理员权限运行命令提示符并输入“chkdsk C: /f /r”命令可深入扫描并修复磁盘错误及坏扇区;3、运行“sfc /scannow”命令可修复受损的系统核心文件以提升系统稳定性;4、通过“计算机管理”中…

    2026年9月3日
    100
  • 华硕电脑硬盘错误代码0x0000007A的故障排查与数据恢复方法

    华硕电脑硬盘错误代码0x0000007A的故障排查与数据恢复方法华硕电脑硬盘错误代码0x0000007A的故障排查与数据恢复方法华硕电脑硬盘错误代码0x0000007A的故障排查与数据恢复方法华硕电脑硬盘错误代码0x0000007A的故障排查与数据恢复方法

    蓝屏错误代码0x0000007a通常由内存访问问题引起,可能涉及硬件或驱动程序。1. 检查内存条是否松动或损坏,取下擦拭金手指并重新插好,尝试更换插槽或逐一测试多根内存条;2. 使用windows内置内存诊断工具(mdsched.exe)重启检测内存错误;3. 更新或回滚显卡等设备驱动程序,建议使用…

    2026年9月3日 用户投稿
    100
  • 电脑操作系统崩溃故障排查及数据恢复实用方法

    电脑操作系统崩溃故障排查及数据恢复实用方法电脑操作系统崩溃故障排查及数据恢复实用方法电脑操作系统崩溃故障排查及数据恢复实用方法电脑操作系统崩溃故障排查及数据恢复实用方法

    操作系统崩溃后可通过五步解决问题并挽救数据:首先观察崩溃现象(如蓝屏代码)并记录;其次尝试进入安全模式排查驱动或软件问题;第三使用系统还原功能恢复至早期状态;第四检查硬件如内存、硬盘等是否异常;最后若均无效则重装系统并配合数据恢复软件抢救文件。日常应定期备份、更新系统、清理垃圾文件、安装杀毒软件以预…

    2026年9月3日 用户投稿
    200
  • 如何在Laravel中实现基于权限的数据备份和恢复

    如何在Laravel中实现基于权限的数据备份和恢复 近年来,数据备份和恢复成为了现代软件开发中不可或缺的一部分。数据的丢失和损坏不仅会导致重大的财务损失,还可能对公司的信誉造成长期的负面影响。为了保证数据的安全和完整性,我们在Laravel框架中可以通过实现基于权限的数据备份和恢复来有效地进行数据的…

    2026年9月2日
    000
  • 如何利用Laravel实现数据备份和恢复功能

    如何利用Laravel实现数据备份和恢复功能 随着互联网的发展,数据备份和恢复功能成为了重要的需求。在web应用中,数据备份和恢复功能可以保证数据的安全性和可靠性,同时也提供了一种应对突发情况的应急手段。Laravel作为一种流行的PHP框架,具备强大的数据处理和数据库操作能力,因此可以很方便地实现…

    2026年9月2日
    000
  • win11便笺内容不见了怎么找回_win11便笺内容丢失恢复方法

    首先检查便笺应用内的时间轴历史记录,确认是否可手动恢复删除内容;其次查看系统回收站中是否有相关便笺文件残留并尝试还原;若开启云同步,可通过Microsoft账户在其他设备或云端获取最新数据;接着在本地AppData路径下查找StickyNotes数据库文件并用SQLite工具提取内容;最后使用专业恢…

    2026年8月31日
    800
  • 戴尔主机系统蓝屏代码0x0000003B的排查及数据恢复方法

    戴尔主机系统蓝屏代码0x0000003B的排查及数据恢复方法戴尔主机系统蓝屏代码0x0000003B的排查及数据恢复方法戴尔主机系统蓝屏代码0x0000003B的排查及数据恢复方法戴尔主机系统蓝屏代码0x0000003B的排查及数据恢复方法

    蓝屏代码0x0000003b通常由硬件驱动、系统文件损坏或外设冲突引起,排查步骤如下:1. 断开所有非必要外设并重启,若正常则逐一测试找出问题设备;2. 进入安全模式卸载或回滚最近安装的驱动,尤其是第三方驱动,也可使用系统还原点恢复系统;3. 运行windows内存诊断工具检测内存问题,若有错误需更…

    2026年8月30日 用户投稿
    600
  • 电脑硬盘检测到坏道故障排查及数据备份操作指南

    电脑硬盘检测到坏道故障排查及数据备份操作指南电脑硬盘检测到坏道故障排查及数据备份操作指南电脑硬盘检测到坏道故障排查及数据备份操作指南电脑硬盘检测到坏道故障排查及数据备份操作指南

    硬盘检测到坏道时,应立即备份数据并排查故障。首先使用chkdsk进行初步扫描,修复逻辑坏道;接着用crystaldiskinfo或hd tune等专业软件获取详细信息;判断坏道类型为逻辑坏道(可修复)或物理坏道(需隔离);优先备份重要数据,必要时使用克隆软件或数据恢复工具;对物理坏道进行分区隔离以延…

    2026年8月29日 用户投稿
    100
  • 硬盘无法识别故障排查,数据恢复及预防技巧分享

    硬盘无法识别故障排查,数据恢复及预防技巧分享硬盘无法识别故障排查,数据恢复及预防技巧分享硬盘无法识别故障排查,数据恢复及预防技巧分享硬盘无法识别故障排查,数据恢复及预防技巧分享

    硬盘无法识别时,先排查电源和数据线连接是否正常,再依次检查bios设置、驱动程序、操作系统问题,若无效则可能是物理损坏;1.检查电源和数据线,尝试更换线材;2.进入bios查看硬盘是否被识别,确认启动模式正确;3.通过设备管理器检查并更新驱动;4.若硬盘有异响等物理损坏迹象,应停止使用并联系专业机构…

    2026年8月28日 用户投稿
    200
  • 苹果手机如何更换ID号

    方法一:通过设备设置更改 1. 退出当前 Apple ID * 进入手机“设置”应用。 * 向下滑动至页面底部,点击“Apple ID”区域(在 iOS 11 及以上版本中,通常显示为你的姓名或账号信息)。 * 选择“退出登录”,系统会提示输入当前 Apple ID 的密码以确认操作。 2. 删除 …

    2026年8月27日
    100
  • 希捷FireCuda 540 1TB对决金士顿KC3000 1TB:PCIe 5.0 SSD在内容创作中的实际优势,速度提升感知强吗?

    希捷FireCuda 540 1TB虽标称万兆,但性能弱于2TB版,仍略超金士顿KC3000 1TB;在大文件传输、媒体缓存重建等连续读写场景有可感知的速度优势,日常随机读取差异小,且享五年质保与三年免费数据恢复服务。 面对希捷FireCuda 540 1TB和金士顿KC3000 1TB这两款PCI…

    2026年8月26日
    000
  • html中如何重置_HTML表单重置(reset)功能与数据清空方法

    HTML表单重置是恢复初始值,清空则是设为空值;reset按钮恢复加载时的状态,JavaScript可实现彻底清空并灵活控制字段状态。 HTML表单的重置,说白了,就是把表单里的数据恢复到某个初始状态。最直接的方式是利用HTML自带的reset类型按钮,它能让表单元素回到它们最初被加载时的值。但很多…

    2025年12月23日
    000
  • HTML数据如何实现数据恢复 HTML数据灾难恢复的应急预案

    答案:HTML数据恢复关键在于备份与响应。需建立本地和云备份、版本控制及自动备份机制;发生故障时应隔离系统、确认备份点并快速还原文件;结合后端数据同步恢复,重建静态缓存,并启用维护页;日常须实施变更监控、权限管控和恢复演练,确保流程可靠有效。 当HTML数据因误删、系统崩溃或网络攻击遭到破坏时,恢复…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信