iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >如何进行MySQL管理基础中的维护、备份和恢复
  • 761
分享到

如何进行MySQL管理基础中的维护、备份和恢复

2024-04-02 19:04:59 761人浏览 八月长安
摘要

如何进行Mysql管理基础中的维护、备份和恢复,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.日志记录   &nb

如何进行Mysql管理基础中的维护、备份和恢复,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1.日志记录

   mysql的日志文件可用于分析性能和排查问题,保存在与数据文件相同的目录下。有以下几种不同类型日志文件:

日志文件类型        默认文件名        mysqld选项        作用

错误日志        <主机名>.err        log-error        记录服务器上发生的每个错误。
一般查询日志        <主机名>.log        log            记录客户机发给服务器的每个查询的踪迹。
慢查询日志        <主机名>-slow.log    log-slow-queries    记录执行时间超过long_query_time值的所有查询。
二进制日志        <主机名>-bin-######    log-bin            记录更新了或已经潜在更新了数据的所有语句。

注:log-bin选项中的“######”是二进制日志文件的编号,每次生成新日志文件会自动增加。如果指定日志文件名,MySQL会只取第一个“.”前面的部分,并自动添加6位数字编号,从000001开始。

   可以使用FLUSH LOGS命令刷新日志,错误日志的内容写入相同路径下的*.err-old文件,然后*.err文件被清空;一般查询日志和慢查询日志中会生成一条包含mysqld信息和列标题的记录,将新旧记录分割开;当前的二进制日志会被关闭,使用新的顺序编号创建新日志。

[@more@]2.检查和修理表

   检查表可以使用myisamchk工具或CHECK TABLE命令,前者只能用于MYISAM表,后者适用于所有表。myisamchk可以分别使用-F、-m、-e、-C、-w选项执行快速检查、中速检查、扩展检查(最慢)、变更检查、等待检查,CHECK TABLE命令可以添加FAST、MEDIUM、EXTENDED等关键字来指定检查的种类。
   检查表时如果发现错误,就应该对其进行修理。最好先复制存在问题的表,以便尝试不同的修理方法。myisamchk工具使用-r选项,可以修理损坏的表,与检查表时相同,被修理的表不能被定。另外,还可以使用-o、-q选项执行不同类型的修理操作。还可以使用REPaiR TABLE命令对表进行修复,类似地,可以添加QUICK或EXTENDED关键字设置修理操作的类型。
   myiasmchk工具要求表不能被锁定,所以最好在服务器关闭的情况下使用,而CHECK TABLE和REPAIR TABLE命令则必须在服务器运行时使用。
   此外,使用OPTIMIZE TABLE命令可以对表进行优化,整理数据文件碎片,对索引页进行排序,更新表的统计信息。需要注意的是,优化操作会锁定表,过程中客户机无法访问。


3.备份和恢复

   使用mysqldump工具可以对表或数据库进行备份。执行备份操作的用户应在进行转储的表或数据库上具有select和lock tables权限。

mysql> show grants for ggyy@localhost;
+-------------------------------------------------------------------------------------------------------------+
| Grants for ggyy@localhost                                                                                   |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'ggyy'@'localhost' IDENTIFIED BY PASSWord '*484FFAA42C12F40931C794D33A11B7F075B91467' |
| GRANT SELECT, LOCK TABLES ON `ggyy`.* TO 'ggyy'@'localhost'                                                 |
+-------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)


   下面是一些转储表的例子:

<1>转储ggyy数据库中的blob_text_test表,将结果重定向到一个指定的文件。

mysqldump ggyy blob_text_test -u ggyy -p > E:ackupMySQLlob_text_test.sql

<2>转储ggyy数据库中的char_test表,使结果直接输出到一个指定的文件。( -r 选项用于在MSDOS环境中使输出文件行尾只有换行符,而不是换行符+回车符。)

mysqldump ggyy char_test -u ggyy -p -r E:ackupMySQLchar_test.sql

<3>转储ggyy数据库中的多个表,将结果重定向到一个指定的文件。

mysqldump ggyy date_time_test float_test int_test members members_temp test_crttb test_crttb2 test_crttb3 test_crttb4 test_crttb5 ts_dt_test -u ggyy -p > E:ackupMySQLggyy-tables.sql

<4>转储test数据库中的namelist和oraleng表,只产生少量的输出,将结果重定向到一个指定的文件。( --compact 选项使转储结果中不包含DROP TABLE、ALTER TABLE ... DISABLE KEYS、LOCK TABLES等语句和“--”开头的注释。)

mysqldump test namelist oraleng --compact -u root -p > E:ackupMySQL amelist+oraleng.sql

<5>只转储test数据库中test表的定义,将结果重定向到一个指定的文件。

mysqldump test test -d -u root -p > E:ackupMySQL est_def.sql

<6>只转储test数据库中test表的数据,将结果重定向到一个指定的文件。

mysqldump test test -t -u root -p > E:ackupMySQL est_data.sql

   当然还可以对整个数据库进行转储,语法是 mysqldump

。如果同时转储多个数据库可以使用 -B 选项,例如转储ggyy和test数据库:

mysqldump -B ggyy test -u root -p -r E:ackupMySQLmysqlback_20100319.sql

   mysqldump工具生成的包含SQL语句的文件,可以使用mysql命令行工具运行,从而达到恢复数据的目的。执行恢复操作的用户应该在进行导入的数据库上具有drop、create、alter、insert等权限。

mysql> show grants for ggyy@localhost;
+-------------------------------------------------------------------------------------------------------------+
| Grants for ggyy@localhost                                                                                   |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'ggyy'@'localhost' IDENTIFIED BY PASSWORD '*484FFAA42C12F40931C794D33A11B7F075B91467' |
| GRANT SELECT, INSERT, CREATE, DROP, ALTER, LOCK TABLES ON `ggyy`.* TO 'ggyy'@'localhost'                    |
+-------------------------------------------------------------------------------------------------------------+
2 rows in set (0.00 sec)


   下面的命令可以将之前转储的ggyy数据库中的表导入到ggyy数据库中:

mysql ggyy -u ggyy -p < E:ackupMySQLlob_text_test.sql

mysql ggyy -u ggyy -p < E:ackupMySQLchar_test.sql

mysql ggyy -u ggyy -p < E:ackupMySQLggyy-tables.sql

   另外,在mysql提示符下使用SOURCE命令同样可以进行恢复。下面的语句可以将之前转储的test数据库中的表导入到test数据库中:

source E:ackupMySQL amelist+oraleng.sql

source E:ackupMySQL est_def.sql

source E:ackupMySQL est_data.sql

undefinedundefinedundefinedundefinedundefinedundefined

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注编程网数据库频道,感谢您对编程网的支持。

您可能感兴趣的文档:

--结束END--

本文标题: 如何进行MySQL管理基础中的维护、备份和恢复

本文链接: https://www.lsjlt.com/news/66970.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何进行MySQL管理基础中的维护、备份和恢复
    如何进行MySQL管理基础中的维护、备份和恢复,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1.日志记录   &nb...
    99+
    2024-04-02
  • MySQL中如何进行备份和恢复数据
    在MySQL中,可以使用mysqldump命令来备份数据库,使用mysql命令来恢复数据库。 备份数据: mysqldump -u ...
    99+
    2024-04-09
    MySQL
  • MySQL中如何进行数据备份和恢复
    MySQL 中可以通过使用 mysqldump 工具来进行数据备份和恢复操作。以下是备份和恢复的步骤: 数据备份: 打开命令行工具...
    99+
    2024-03-06
    MySQL
  • 如何进行MySQL中的xtrabackup备份恢复
    这篇文章给大家介绍如何进行MySQL中的xtrabackup备份恢复,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。    XtraBackup是Percona推出...
    99+
    2024-04-02
  • 如何在MySQL中进行数据备份和恢复
    在MySQL中进行数据备份和恢复可以使用以下几种方法: 使用mysqldump命令进行数据备份: 备份数据库:mysqldum...
    99+
    2024-04-09
    MySQL
  • FreeBSD如何进行备份和恢复
    FreeBSD可以使用多种工具来进行备份和恢复,以下是一些常用的方法: 使用rsync命令进行备份和恢复: 备份:可以使用rs...
    99+
    2024-04-02
  • 如何进行Grafana的备份和恢复
    要备份Grafana,可以按照以下步骤进行: 备份Grafana的配置文件:在Grafana的安装目录下找到grafana.in...
    99+
    2024-04-02
  • 如何进行Zabbix的备份和恢复
    Zabbix的备份和恢复可以通过以下步骤实现: 备份Zabbix数据: 在Zabbix服务器上登录到命令行界面。 使用以下命令备份...
    99+
    2024-04-02
  • MySQL 8.0.11 innodb cluster运维管理中如何进行备份
    本篇文章为大家展示了MySQL 8.0.11 innodb cluster运维管理中如何进行备份,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。MySQL 8.0.1...
    99+
    2024-04-02
  • MySQL中如何进行数据备份和灾难恢复
    在MySQL中,可以使用以下方法进行数据备份和灾难恢复: 数据备份: 使用mysqldump命令:可以通过命令行使用mysql...
    99+
    2024-03-06
    MySQL
  • 如何使用MySQL进行数据备份和恢复?
    如何使用MySQL进行数据备份和恢复?数据库中的数据对于任何企业或个人而言都是非常重要的。由于各种原因(如硬件故障、人为错误或恶意攻击等),数据可能会丢失或损坏。因此,定期进行数据库备份是非常重要的。MySQL作为最受欢迎的开源关系型数据库...
    99+
    2023-10-22
    数据恢复 MySQL备份 MySQL数据备份
  • 如何使用mysqldump对mysql进行备份和恢复
    这篇文章给大家分享的是有关如何使用mysqldump对mysql进行备份和恢复的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。mysqldump是mysql的逻辑备份恢复工具,可以...
    99+
    2024-04-02
  • Cassandra中如何进行数据的备份和恢复
    在Cassandra中进行数据备份和恢复通常有两种方法:使用Cassandra自带的工具和第三方工具。 使用Cassandra自带...
    99+
    2024-04-02
  • SQLite中如何进行数据备份和恢复
    在SQLite中进行数据备份和恢复可以采用以下方法: 数据备份: 使用SQLite的命令行工具进行数据备份: sqlite3 o...
    99+
    2024-03-14
    SQLite
  • CentOS中如何进行系统备份和恢复
    在CentOS中进行系统备份和恢复通常使用工具例如tar、rsync或者dd来实现。下面是使用这些工具进行系统备份和恢复的步骤: ...
    99+
    2024-03-13
    CentOS
  • FreeBSD中如何进行备份和恢复数据
    在FreeBSD中进行数据备份和恢复可以使用多种工具和方法,以下是其中一种常用的方法: 备份数据: 使用rsync命令进行数据...
    99+
    2024-04-02
  • OpenBSD中如何进行系统备份和恢复
    在OpenBSD中,可以使用dump和restore命令来进行系统备份和恢复操作。 备份系统: 要备份整个OpenBSD系统,可以...
    99+
    2024-04-02
  • Fedora中如何进行系统备份和恢复
    在Fedora中,可以使用一些工具来进行系统备份和恢复。以下是一种常用的方法: 使用备份工具:Fedora默认自带了一个名为“D...
    99+
    2024-04-02
  • Cassandra如何进行数据备份和恢复
    Cassandra是一个分布式数据库系统,具有高可用和容错能力。要对Cassandra进行数据备份和恢复,可以采取以下步骤: 数据备...
    99+
    2024-04-09
    Cassandra
  • 如何进行mysql的备份与恢复的探讨
    如何进行mysql的备份与恢复的探讨,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1,我现在的备份方案为:A(master)-...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作