返回顶部
首页 > 资讯 > 数据库 >mysql数据库恢复
  • 723
分享到

mysql数据库恢复

mysql数据库恢复 2018-08-16 05:08:26 723人浏览 无得
摘要

目录1.数据库恢复基本事项2.利用source命令恢复数据库2.1.使用source命令恢复数据库的说明2.2.恢复演示3.利用Mysql命令恢复(标准)3.1.使用mysql命令恢复基本实践3.2.使用开发人员提交的sql语句恢

mysql数据库恢复

目录

  • 1.数据库恢复基本事项
  • 2.利用source命令恢复数据库
    • 2.1.使用source命令恢复数据库的说明
    • 2.2.恢复演示
  • 3.利用Mysql命令恢复(标准)
    • 3.1.使用mysql命令恢复基本实践
    • 3.2.使用开发人员提交的sql语句恢复文件
    • 3.3.针对压缩的备份数据进行恢复
      • 3.3.1.使用gzip解压(会删除压缩文件)
      • 3.3.2.使用gzip解压(不会删除压缩文件)
      • 3.3.3.使用gunzip解压(不会删除压缩文件)
      • 3.3.4.使用zcat读取压缩包数据
  • 4.利用mysql -e参数查看mysql数据
    • 4.1.查看数据库oldboy库test表数据
    • 4.2.利用mysql -e参数查看SQL线程执行状态
    • 4.3.利用mysql -e参数查看mysql变量及性能状态
    • 4.4.利用mysql -e参数不重启数据库修改数据库参数
    • 4.5.利用mysql -e参数引出的重要命令
    • 4.6.mysqladmin命令常用参数
    • 4.7.mysql命令常用参数

1.数据库恢复基本事项

MySQL命令以及source命令恢复数据库的原理就是在数据库里重新执行文件的SQL语句的过程。数据恢复和字符集的关联很大,如果字符集不正确则会导致恢复的数据乱码。

2.利用source命令恢复数据库

2.1.使用source命令恢复数据库的说明

进入MySQL数据库控制台后,切换到想恢复数据的数据库。

接着,使用source命令进行恢复,后面接.sql文件。

source oldboy_db.sql

这个oldboy_db.sql文件是系统的相对路径,默认是登录MySQL前的系统路径,也可以使用完整的路径。

2.2.恢复演示

1、先执行一次正式的备份:
mysqldump -B --master-data=2 --single-transaction oldboy|gzip >/opt/oldboy.sql.gz
2、恢复前解压为SQL文件:
gzip -d /opt/oldboy.sql/gz
3、登录数据库删除oldboy数据库,然后准备用source恢复:
drop database oldboy;
select * from oldboy.test;
source /opt/oldboy.sql
select * from oldboy.test;

3.利用MySQL命令恢复(标准)

3.1.使用MySQL命令恢复基本实践

MySQL命令是MySQL数据库自带的重要命令之一,除了日常登录数据库之外,还可以通过Mysqldump备份的文件或者人工编辑的SQL语句文件对数据库进行数据恢复。

drop database oldboy;
mysql 

3.2.使用开发人员提交的SQL语句恢复文件

假定开发人员让运维人员或DBA插入数据到数据库(可能是通过邮箱发送的,内容可能是字符串或者SQL文件)。

此时的SQL文件里很可能没有use db这样的字样,此时如果使用mysql命令导入就要指定数据库名。

mysql oldboy 

指定库名oldboy的作用就相当于是在数据库里执行use oldboy,因此如果使用mysqldump备份时不使用-B参数,那么在恢复时不但可能会提示没有数据库,还可能会提示没有选择数据库。

并且在SQL语句文件里尽可能地加入字符集设置,以防止乱码。假设开发人员提交了N行插入语句,则需要插入到数据库。

insert into test(name) values("小陶");

文件里执行:
set names utf8;
insert into test(name) values("小陶");

如果是utf8数据库,人工编辑的SQL文件,使用“utf8”的格式。

恢复数据到数据库:
mysql 

使用-B参数以后,备份结果中会带use oldboy和“create database oldboy”语句,而恢复时在mysql命令后指定库名就相当于是执行use oldboy。

mysql 

3.3.针对压缩的备份数据进行恢复

3.3.1.使用gzip解压(会删除压缩文件)

gzip -d /opt/oldboy.sql.gz
mysql 

3.3.2.使用gzip解压(不会删除压缩文件)

!mysqldump  #调用最近的mysqldump命令,重复执行备份。
mysqldump -B --master-data=2 --single-transaction oldboy|gzip >/opt/oldboy.sql.gz
gzip -cd /opt/oldboy.sql.gz >/opt/oldboy1.sql  #特殊解压方法
mysql 

3.3.3.使用gunzip解压(不会删除压缩文件)

gunzip -cd /opt/oldboy.sql.gz >/opt/oldboy.sql
mysql 

3.3.4.使用zcat读取压缩包数据

zcat /opt/oldboy.sql.gz >/opt/oldboy3.sql
mysql 

4.利用mysql -e参数查看mysql数据

mysql命令提供了一个功能,可以让使用者无须登录数据库,在Linux命令行就可以执行SQL语句。

4.1.查看数据库oldboy库test表数据

mysql -e "use oldboy;select * from test;"

4.2.利用mysql -e参数查看SQL线程执行状态

mysql -e "show processlist;"

查看慢查询语句:
mysql -e "show full processlist;"

show full processlist;

kill id;  #id=xxx

解决办法:
调整MySQL的超时参数配置:
show variables like "&_timeout%";
set global wait_timeout = 60;
set global interactive_timeout = 60;

配置文件里修改:
[mysqld]
interactive_timeout = 120  #此参数设置后wait_timeout自动生效
wait_timeout = 120

其他方法:
1、在PHP程序中,不使用持久链接,即使用mysql_connect而不是pconnect。
2、php程序执行完毕,应该显式调用mysql_close。
3、Java程序调整连接池(C3P0)或者调整JAVA服务(Tomcat有关连接池参数)。
4、逐步分析MySQL的SQL查询及慢查询日志,找到查询过慢的SQL,优化

4.3.利用mysql -e参数查看mysql变量及性能状态

查看mysql的所有参数配置:
mysql -e "show variables;"

查看my.cnf配置文件的配置有没有在数据库中生效:
mysql -e "show variables like "log-bin";"

查看mysql数据库运行状态:
mysql -e "show global status;"|head -5

4.4.利用mysql -e参数不重启数据库修改数据库参数

mysql -e "show variables;"|grep key_buffer
mysql -e "set global key_buffer_size = 1024*1024*16;"
mysql -e "show variables;"|grep key_buffer

实现不重启数据库更改数据库参数:
set global key_buffer_size = 1024*1024*16;  #及时生效,重启mysql失效

4.5.利用mysql -e参数引出的重要命令

show processlist;  #查看数据库里正在执行的SQL语句,可能无法看全完整的SQL语句。
show full processlist;  #查看正在执行的完整SQL语句,完整显示。
set global key_buffer_size = 1024*1024*16;  #不重启数据库调整数据库参数,直接生效,重启后失效。
show variables;  #查看数据库的配置参数信息。例如,my.cnf里参数的生效情况。
show variables like "%log_bin%";
kill ID;  #杀掉SQL线程的命令,ID为线程号。
show session status;  #查看当前会话的数据库状态信息。
show global status;  #查看整个数据库运行的状态信息,要分析并要做好监控。
show engine innodb status;  #显示innodb引擎的性能状态。

4.6.mysqladmin命令常用参数

mysqladmin passWord oldboy123  #设置密码
mysqladmin -uroot -poldboy123 password oldboy  #修改密码
mysqladmin -uroot -poldboy123 status  #查看状态,相当于show status
mysqladmin -uroot -poldboy123 -i 1 status  #每秒查看一次状态
mysqladmin -uroot -poldboy123 extended-status  #等同于show global status
mysqladmin -uroot -poldboy123 flush-logs  #切割日志
mysqladmin -uroot -poldboy123 processlist  #查看执行的SQL语句信息
mysqladmin -uroot -poldboy123 processlist -i 1  #每秒查看一次执行的SQL语句
mysqladmin -uroot -p"oldboy123" shutdown  #关闭mysql服务
mysqladmin -uroot -p"oldboy123" variables  #相当于show variables

4.7.mysql命令常用参数

mysql命令常用参数 说明
-u 指定数据库用户
-p 指定数据库密码
-S 指定数据库Socket文件
-h 指定数据库主机,默认localhost
-P 指定数据库端口,默认3306
-e 不登录数据库执行数据库命令
--default-character-set=name 指定字符集登录数据库或备份
您可能感兴趣的文档:

--结束END--

本文标题: mysql数据库恢复

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

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

猜你喜欢
  • mysql数据库恢复
    目录1.数据库恢复基本事项2.利用source命令恢复数据库2.1.使用source命令恢复数据库的说明2.2.恢复演示3.利用MySQL命令恢复(标准)3.1.使用MySQL命令恢复基本实践3.2.使用开发人员提交的SQL语句恢...
    99+
    2018-08-16
    mysql数据库恢复
  • 《MySQL数据库》MySQL备份恢复
    前言 MySQL数据库最重要的部分就是数据,所以保证数据不被损坏尤为重要,大家都知道911事件,当时非常多的数据丢失,导致经济混乱。接下来我们就来讲讲MySQL是如何保障数据完整,应对特殊情况,如何恢复等。 备份 备份检查:保证备份没有问题...
    99+
    2016-12-27
    《MySQL数据库》MySQL备份恢复 数据库入门 数据库基础教程 数据库 mysql
  • 如何恢复MySQL数据库数据
    这篇文章将为大家详细讲解有关如何恢复MySQL数据库数据,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、恢复方案1、数据量不是特别大,可以将mysqldu...
    99+
    2024-04-02
  • mysql数据库如何恢复数据
    mysql 数据恢复有四种方法:从备份恢复:最简单可靠,适合定期备份数据库的情况。使用 mysql 恢复工具:适用于没有备份或备份已损坏的情况。从二进制日志恢复:适用于二进制日志记录并数...
    99+
    2024-04-14
    mysql
  • mysql数据库怎么恢复数据
    要恢复MySQL数据库中的数据,有几种常见的方法: 使用备份文件:如果您有数据库的备份文件,可以通过将备份文件恢复到MySQL数...
    99+
    2024-05-21
    mysql
  • 怎么恢复MySQL数据库
    今天就跟大家聊聊有关怎么恢复MySQL数据库,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。数据库恢复是指以备份为基础,与备份相对应的系统维护和管理操...
    99+
    2024-04-02
  • MySQL数据库误删恢复
    前言        经常听说删库跑路这真的不只是一句玩笑话,若不小心删除了数据库,事情很严重。你一个不小心可能会给公司删没。建议研发不要直连生成环境,一般的话都会分配账号权限,生产环境的账号尽量是只读,以防你一个不经意给库或表删除。一定...
    99+
    2023-09-02
    数据库 sql
  • MySQL如何恢复数据库
    MySQL恢复数据库的方法有使用物理备份恢复、使用逻辑备份恢复、使用二进制日志恢复和使用数据库复制进行恢复等。详细介绍:1、物理备份恢复,物理备份是指将整个数据库的文件系统备份到另一个位置,步骤为先停止MySQL服务,将备份文件复制回数据库...
    99+
    2023-10-22
    mysql 数据库
  • mysql数据库如何恢复
    通过以下步骤恢复 mysql 数据库:确定要恢复的备份。停止 mysql 服务。使用 mysqldump 从备份文件恢复数据库。导入恢复后的数据库。刷新权限。启动 mysql 服务。验证...
    99+
    2024-04-14
    mysql
  • 使用XtraBackup恢复|备份 Mysql数据库 -- 数据恢复篇
                                 ...
    99+
    2024-04-02
  • sql server数据库错误数据恢复-数据库数据恢复
    1.服务器硬件设备清单2.故障描述需要进行数据恢复的服务器是一台r520型号存储,共有7块SAS硬盘分别组成raid1和raid5两组磁盘阵列。主要sql server数据库存放在C盘中,在使用过程中,客户...
    99+
    2024-04-02
  • MySQL数据库备份和恢复
    目录 MySQL数据库备份和恢复 备份恢复概述 为什么要备份 备份注意要点 还原要点 备份类型: 备...
    99+
    2015-03-06
    MySQL数据库备份和恢复
  • Mysql数据库备份与恢复
    1 数据备份与恢复2 使用第三方软件进行备份1 数据备份与恢复1.1 数据备份方式物理备份:直接拷贝库或者表对应的文件。cp,tar, ...具有局限性,前提是表的存储引擎为myisam,跨平台性...
    99+
    2024-04-02
  • xtrabackup备份恢复MySQL数据库
    1. 全量备份恢复: 查看原表内容: MariaDB [(none)]> select * from testdb.students; +----+------------+------...
    99+
    2024-04-02
  • 恢复数据库的MySQL方法
    MySQL是一个常用的开源关系型数据库管理系统,它的数据是保存在文件中的,因此在一些情况下,数据库文件可能会遭到损坏或意外删除,需要进行恢复。本文将介绍在MySQL中如何进行数据库恢复...
    99+
    2024-02-26
    数据恢复工具等。 数据丢失
  • mysql数据库数据删除如何恢复
    这篇文章将为大家详细讲解有关mysql数据库数据删除如何恢复,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在mysql有时执行了错误的update或者delete时导致大...
    99+
    2024-04-02
  • MySQL数据库怎么增量恢复数据
    本篇内容介绍了“MySQL数据库怎么增量恢复数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、场景概述...
    99+
    2024-04-02
  • Mysql—数据恢复
    根据.frm和.ibd文件恢复表结构和数据...
    99+
    2016-12-20
    Mysql—数据恢复
  • mysql数据库恢复操作指南
    下文给大家带来有关mysql数据库恢复操作指南内容,相信大家一定看过类似的文章。我们给大家带来的有何不同呢?一起来看看正文部分吧,相信看完mysql数据库恢复操作指南你一定会有所收获。1、系统说明:数据库版...
    99+
    2024-04-02
  • Mysql数据库之备份和恢复
     一、为什么要数据备份?   备份的主要目的是灾难恢复。 在生产环境中,数据的安全性至关重要。 任何数据的丢失都可能产生严重的后果。 造成数据丢失的原因: 程序错误人为,操作错误,运算错误,磁盘故障灾难(如火灾、地震)和盗窃. 二、...
    99+
    2023-09-15
    数据库 mysql
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作