操作系统:Windows Server 2012 Datacenter

转换目录:

1、先转到盘符,如 cd c:\

2、再转到目录,如 cd "Program Files (x86)\MySQL\MySQL Server 5.1\bin" ,注意,一定要加双引号

进入mysql

启动 net start mysql

停止 net stop mysql

其中启动数据库异常可以根据错误码查找

本次启动异常出现1067

解决办法

1、将“C:\ProgramData\MySQL\MySQL Server 5.1\data”目录下面的三个文件删除,一定要先备份再删除(ibdata1是存放类型InnoDB ,与myisam 区别可以找度娘):

ibdata1 ib_logfile0 ib_logfile1

2、重启mysql即可

进入bin目录下面运行 mysql.exe,其他exe文件一样操作方式

./mysql -uroot -p

到这里进入后,show tables正常,能显示表

但是无法select 结果,提示类似异常“MySQL Server Error:Table 'test.pw_forums' doesn't exist ( 1146 )... ”

解决办法

1、将备份的ibdata1尝试恢复,重启mysql

2、若上面不行,尝试从其他地方将表结构与数据重新导入

3、以上都不行,只能将数据库删除,重新创建库与表(此办法是没办法的办法,缺点是历史数据丢失)

数据库备份:

1、编写批处理命令:

文件内容如下 :

@echo off

echo.

echo      MySQL数据库备份

echo *****************************

echo.

echo 今天是 %date%

echo 时间是 %time%;

echo.

echo *****************************

set "Ymd=%date:~6,4%%date:~3,2%%date:~,2%"

set "tm=%time:~,2%%time:~3,2%%time:~6,2%"

if not exist "C:\数据备份\%Ymd%" md "C:\数据备份\%Ymd%"

"C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqldump" --opt -Q 库名 -uroot -p密码 > "C:\数据备份\%Ymd%\备份名%tm%.sql"

echo.

echo MySQL数据库备份完成,请进行检查!

echo.

echo.

exit

=========结束=====

注意:日期格式为 20/10/2014 时间格式为 12:12:10.15

2、Windows Server 2012添加自动任务计划来定时处理备份操作批处理。

还原测试;

用命令进入数据库:

1、cd 进入mysql bin目录  ./mysql -uroot -p123456

2、create database test_test;

3、use test_test 进入相应库,然后导入命令,mysql>source d:\wcnc_db.sql

4、之后可以正常命令查看表结构及数据。

另一种方式:

MySQL数据库恢复(使用mysqlbinlog命令)

binlog是通过记录二进制文件方式来备份数据,然后在从二进制文件将数据恢复到某一时段或某一操作点。

1:开启binlog日志记录

修改mysql配置文件mysql.ini,在[mysqld]节点下添加

# log-bin

log-bin = E:/log/logbin.log

路径中不要包含中文和空格。重启mysql服务。通过命令行停止和启动mysql服务

c:\>net stop mysql;

c:\>net start mysql;

进入命令行进入mysql并查看二进制日志是否已经启动

Sql代码

mysql>show variables like 'log_%';

日志成功开启后,会在E:/log/目录下创建logbin.index和logbin.000001两个文件。logbin.000001就是数据库的备份文件,以后就可以通过此文件对数据库进行恢复操作。

2:查看备份的二进制文件

Sql代码

c:\mysql\bin\>mysqlbinlog e:/log/logbin.000001

日后记录的操作多了,命令行方式基本就用不上了。可以使用将日志导出文件的方式来查看日志内容

2.1 导出

txt代码

c:\mysql\bin\>mysqlbinlog e:/log/logbin.000001 > e:/log/log.txt

">": 导入到文件中; ">>": 追加到文件中

如果有多个日志文件

Sql代码

c:\mysql\bin\> mysqlbinlog e:/log/logbin.000001 > e:/log/log.sql

c:\mysql\bin\> mysqlbinlog e:/log/logbin.000002 >> e:/log/log.sq

2.2 按指定位置导出:

Sql代码

c:\mysql\bin\>mysqlbinlog --start-position=185 --stop-position=338 e:/log/logbin.000001 > e:/log/log3.txt

2.3 按指定时间导出:

Xml代码

:\mysql\bin\>mysqlbinlog --start-datetime="2010-01-07 11:25:56" --stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 > e:/log/log_by_date22.txt

3:从备份恢复数据库

做了一次更新操作,之后日志的内容如下:

3.1 恢复:

Sql代码

c:\mysql\bin\>mysqlbinlog e:/log/logbin.000001 | mysql -u root -p

3.2 按指定位置恢复:

Sql代码

c:\mysql\bin\>mysqlbinlog --start-position=185 --stop-position=338 e:/log/logbin.000001 | mysql -u root -p

3.3 按指定时间恢复:

Xml代码

c:\mysql\bin\>mysqlbinlog --start-datetime="2010-01-07 11:25:56" --stop-datetime="2010-01-07 13:23:50" e:/log/logbin.000001 | mysql -u root -p

3.4 通过导出的脚本文件恢复

Sql代码

c:\mysql\bin\>mysql -e "source e:/log/log.sql"

4.其他常用操作

4.1 查看所有日志文件

Sql代码

mysql>show master logs;

4.2 当前使用的binlog文件

Sql代码

mysql>show binlog events \g;

4.3 产生一个新的binlog日志文件

Sql代码

mysql>flush logs;

4.4 删除所有二进制日志,并从新开始记录(注意:reset master命令会删除所有的二进制日志)

Sql代码

mysql > flush logs;

mysql > reset master;

4.5 快速备份数据到sql文件

Sql代码

c:\mysql\bin>mysqldump -u root -p --opt --quick interactive > e:/log/mysqldump.sql

为了方便查看,把从脚本恢复的命令在写一次

Sql代码

c:\mysql\bin\>mysql -e "source e:/log/mysqldump.sql"

c mysql异常处理_mysql 异常处理记录相关推荐

  1. ASP.NET Core 异常处理与日志记录

    ASP.NET Core 异常处理与日志记录 参考文章: (1)ASP.NET Core 异常处理与日志记录 (2)https://www.cnblogs.com/vipyoumay/p/783806 ...

  2. MySQL存储过程的异常处理

    MySQL存储过程的异常处理 参考文章: (1)MySQL存储过程的异常处理 (2)https://www.cnblogs.com/geaozhang/p/6814567.html 备忘一下.

  3. 基于 abp vNext 和 .NET Core 开发博客项目 - 异常处理和日志记录

    基于 abp vNext 和 .NET Core 开发博客项目 - 异常处理和日志记录 转载于:https://github.com/Meowv/Blog 在开始之前,我们实现一个之前的遗留问题,这个 ...

  4. mysql合并多条纪录字段_Mysql应用mysql合并多条记录的单个字段去一条记录编辑

    <MysqL应用MysqL合并多条记录的单个字段去一条记录编辑>要点: 本文介绍了MysqL应用MysqL合并多条记录的单个字段去一条记录编辑,希望对您有用.如果有疑问,可以联系我们.测试 ...

  5. MySQL记录变化工具_MySQL 表记录数对比工具

    工具介绍: 以下介绍一个实时对比两个MySQL实例的中表记录数的工具 checkcount.py . 工具大多用于迁移后或者主从数据快速比较 , 快速验证两个mysql数据库实例每个表是否具有相同记录 ...

  6. mysql查找并删除记录_mysql 子查询删除记录

    mysql 子查询删除记录 mysql 可以通过子查询得到要删除的记录条件,然后通过子查询得结果匹配要删除的记录.但是 mysql 不能直接删除子查询表中的数据,必须通过一个临时表来解决.例如: de ...

  7. 【MySQL】面试官:如何查询和删除MySQL中重复的记录?

    写在前面 最近,有小伙伴出去面试,面试官问了这样的一个问题:如何查询和删除MySQL中重复的记录?相信对于这样一个问题,有不少小伙伴会一脸茫然.那么,我们如何来完美的回答这个问题呢?今天,我们就一起来 ...

  8. windows mysql 主从_mysql读写分离实战二-windows 上mysql主从数据库搭建及问题总结

    根据前篇web项目的搭建后,需要搭建主从数据库,这里在windows服务器上搭建了主从结构的mysql,这里在记录下在本机模拟搭建过程 在windows上安装和linux还是有些不同,不注意就会耽误不 ...

  9. mysql文件系统_mysql文件系统先睹为快

    mysql文件系统先睹为快(目录) 这是一款正在开发中的linux 文件系统,能把linux 上的mysql 数据库作为文件系统来处理.开发小组希望能得到更多的建议,下面的文章翻译自: http:// ...

最新文章

  1. DevExpress- XPO入门(1)
  2. php入门时间,PHP入门(8)日期和时间
  3. 2050 Programming Competition (CCPC)
  4. PHP 验证码   高洛峰 细说PHP
  5. 电脑运行卡顿怎么处理_【众点学】电脑运行PS卡顿?可能是你的虚拟内存没设置好!...
  6. php+控制器+数据库,Laravel5.1数据库连接、创建数据库、创建model及创建控制器的方法_PHP...
  7. php make test 作用,larablog 系列文章 06 - 测试:使用 PHPUnit 进行单元和功能测试
  8. Petrozavodsk Winter-2018. Carnegie Mellon U Contest
  9. 曲线积分与曲面积分的计算机应用,曲线积分与曲面积分(解题方法归纳).doc
  10. 关于GPS坐标系和地图定位偏差
  11. 数学分析教程(科大)——6.1笔记+习题
  12. 大厂团队协作工具推荐
  13. vue 实现打字机效果
  14. MFC 句柄Hwnd 与 窗口Wnd的联系
  15. Windows ActiveMq开机自启动设置
  16. 删除非空目录linux_如何在Linux中删除空的非空目录
  17. 【C#】字体增大、减小、改变颜色
  18. 比特(bits),符号(symbol),码片(chips)区别
  19. vb.net 实现图片圆形渐变模糊
  20. c语言实数运算1,C语言设计实数四则运算运用MAKEFILE,急用

热门文章

  1. oracle 11g rac+centos6.5
  2. 【ArcGIS Pro微课1000例】0023:ArcGIS Pro 3.0中打开GeoPackage数据库(.gpkg)
  3. [生活]keep手环不断自动重启解决方案
  4. 在任意类中获得屏幕的宽高
  5. Option PE header
  6. 2021.01.14【NOIP提高B组】模拟 总结
  7. 如何高效利用 Grafana 监控分析 TiDB 指标
  8. Python获取天天基金上的数据
  9. 面试题|设计instagram
  10. 笔记本电脑什么牌子好