MySQL损坏,重装MySQL使用data文件恢复数据库
- 1.清空相关注册表(清空安装残留)
- 2.下载合适MySQL版本(与损坏数据库版本相同)
- 3.数据恢复
- 4.Windows server MySQL备份bat
- 5.设置Windows定时执行
# 初始化安装
mysqld -install# 查看数据初始化密码
mysqld --initialize --console# 启动/停止mysql服务
net start mysql
net stop mysql# 关闭所有mysql服务
taskkill/f /t /im mysqld.exe# 清空Windows mysql环境变量
gc delete mysql# 删除相关服务
mysqld -remove mysql# 数据库无法进行远程设置权限(该命令在mysql 下面执行)update user set host = '%' where user = 'root';
FLUSH PRIVILEGES;# 登录MySQL查看配置是否生效
show variables like '%log_bin%';
# 查看日志列表
SHOW MASTER LOGS;# 备份数据库
"D:\lib\mysql\bin\mysqldump.exe" -uroot -p (密码) --opt --default-character-set=utf8 -e --triggers -R --hex-blob --flush-logs -x (数据库名称) > d:\lib\test.sql# 根据文件恢复数据库
C:\Windows\system32>mysql -uroot -p test001<"D:\lib\test.sql"# 使用文件直接复原
mysql> use booksDB
Database changed
mysql> source F:\backup\booksDB_20180603.sql
1.清空相关注册表(清空安装残留)
https://blog.csdn.net/2302_76413783/article/details/137375572
需要使用相同的mysql版本进行恢复 (以下为使用zip安装)
https://www.cnblogs.com/kendoziyu/p/MySQL.html
(使用该教程进行安装)
2.下载合适MySQL版本(与损坏数据库版本相同)
下载地址:https://downloads.mysql.com/archives/community/
3.数据恢复
https://blog.csdn.net/ddd295569371/article/details/125330919
my.ini
[client]
# 设置mysql客户端默认字符集
default-character-set=utf8[mysqld]
# 设置3306端口
port=3306
character_set_server=utf8# 允许最大连接数
max_connections=800
# 解压目录
basedir=D:\lib\mysql
# 解压目录下data目录
datadir=D:\lib\mysql\data
default-storage-engine=INNODBsql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
log-bin=mysql-bin
server-id=1
# 日志存储天数 默认0 永久保存
# 如果数据库会定期归档,建议设置一个存储时间不需要一直存储binlog日志,理论上只需要存储归档之后的日志
expire_logs_days = 30
# binlog最大值
max_binlog_size = 1024M
# 规定binlog的格式,binlog有三种格式statement、row、mixad,默认使用statement,建议使用row格式
binlog_format = ROW
# 在提交n次事务后,进行binlog的落盘,0为不进行强行的刷新操作,而是由文件系统控制刷新日志文件,如果是在线交易和账有关的数据建议设置成1,如果是其他数据可以保持为0即可
sync_binlog = 1[WinMySQLAdmin]
D:\lib\mysql\bin\mysqld.exe
4.Windows server MySQL备份bat
back_tsyh.bat
@echo offforfiles /p "D:\lib\back\tsyh" /m backup_tsyh_*.sql -d -1 /c "cmd /c del /f @path"set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%""D:\lib\mysql\bin\mysqldump" --opt --single-transaction=TRUE --user=root --password=xxx --host=127.0.0.1 --protocol=tcp --port=3306 --default-character-set=utf8 --single-transaction=TRUE --routines --events "tsyh" > "D:\lib\back\tsyh\backup_tsyh_%Ymd%.sql"@echo on
5.设置Windows定时执行
https://www.cnblogs.com/xh_Blog/p/17215036.html
备注:以上教程由作者在生产环境已验证,数据库突然无法启动真的很让人崩溃