前言
最近电脑重装了系统,C盘彻底格式化了,但是D盘中的文件还是保留了下来。
我的MySQL的数据都在D盘了,想要重新恢复MySQL,还是很简单的:
- 重新安装Mysql
- 将源数据拷贝到新的Mysql的data目录下
顺便记录一下MySQL压缩包的安装方式(我个人喜欢用压缩包安装应用软件)
先来说怎么安装,等会再说怎么恢复数据
安装
第一步:下载压缩包,官网地址
MySQL :: Download MySQL Community Server (Archived Versions)
解压后的是这样的
第二步:在此目录下,新建my.ini
配置文件,此配置文件的作用是用来对MySQL做出一些设置
[mysqld]
#设置3306端口
port=3306
#设置mysql的安装目录,设置成你的
basedir="D:\\Environments\\mysql\\mysql-8.0.30-winx64"
#设置mysql数据库的数据的存放目录,设置成你的
datadir="D:\\Environments\\mysql\\mysql-8.0.30-winx64\\data"
#允许最大连接数
max_connections=200
#允许连接失败的次数。
max_connect_errors=10
#服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
#默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
#设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
最终是这样的
第三步:安装MySQL服务
通过管理员的方式打开CMD,进入到bin目录
重要的事情说三遍:
以管理员身份运行CMD!
以管理员身份运行CMD!
以管理员身份运行CMD!
在bin目录下,执行此命令来初始化MySQL服务,(mysqld是mysql服务端的命令)
mysqld --initialize --console
注意:
此命令是初始化MySQL服务端,所以你的数据目录必须是干净的
你指定的数据目录必须是一个干净的目录才可以
记住这个临时生成的密码,等会连接Mysql服务要用的。
第四步:注册MySQL服务到系统服务
msyqld --install [服务名]
如果不指定服务名,则默认是mysql
支持,已经算是安装完成了。
第五步:启动Mysql服务
net start mysql
第六步:连接到Mysql服务,修改密码即可
连接mysql服务,使用刚才生成的临时密码
mysql -uroot -p
修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '自己设置一个新密码';
接下来使用正常使用Mysql就好了,配置环境变量这种简单的事情就不说了。
恢复数据
MySql重新安装之后,把原来的data中的文件,拷贝都新的data目录下即可了。
注意,要保证源数据库版本与现在的版本保持一致
1. 首先将mysql服务停止!
在源data目录中,每个目录就是一个库:
把需要恢复的这些库的目录拷贝的新的data目录中,
然后把,所有ib开头的文件,以及auto.cnf
、auto.cnf
、mysql.ibd
拷贝过去
然后重启Mysql服务,就能看到恢复的数据了。
巨人的肩膀:
MySQL8通过data目录恢复数据 - 运维茶馆