打开mysql文件夹下的 *.ini 文件
配置二进制日志需要配置 server-id = 1,当然 1 只是例子大家自行配置,不配置 net start mysql 命令无法启动而且还没报错,看了半天内伤,太久没配置都忘了
配置在ini文件的 mysqld 区域
#日志
server-id = 1
#开启二进制日志
log-bin = mysql-bin
binlog-ignore-db = mysql,information_schema
#开启错误日志
log-error = D:\mysql\log\error\error.log
配置完成后删除mysql文件夹下的 data 文件夹
删除 data 文件夹前记得备份一份
重要的数据库也记得备份
生成data文件名称需要在 ini 文件的 mysqld 区域配置
datadir = data
重新启动
用管理员身份运行 cmd
进入 mysql 文件夹下的 bin 文件夹
运行命令
1.mysqld -remove MySQL
提示: Service successfully removed 则成功
2. mysqld --initialize-insecure
3.mysqld --install
4.net start mysql
1、这个时候 启动成功 需要修改 root 的密码,
2、然后把事先备份的 data 文件夹打开,复制出原来的数据库名称的文件夹,复制到新的 data 文件夹中
3、把备份的 data 文件夹中的 ibdata1 文件,复制 覆盖新的 data 文件夹 下的 ibdata1 文件
4、打开mysql图形界面,重新连接打开数据库,数据库数据表和数据正常即可
当然太麻烦,可以事先备份数据库,还原即可。
此条可忽略,5.7版本已经不再使用password来作为密码的字段了 而改成了authentication_string,一开始还找不到
最后启动程序发现数据库链接无法访问,需要mysql远程访问授权IP
1、本机登陆 mysql -hlocalhost -u root -p
2、use mysql;
3、grant all privileges on 库名.表名 to ‘用户名’@‘IP地址’ identified by ‘密码’ with grant option;
库名:要远程访问的数据库名称,所有的数据库使用“”
表名:要远程访问的数据库下的表的名称,所有的表使用“”
用户名:要赋给远程访问权限的用户名称
IP地址:可以远程访问的电脑的IP地址,所有的地址使用“%”
密码:要赋给远程访问权限的用户对应使用的密码
4、刷新权限使其生效(重要)
flush privileges;
5、修改配置文件
ini 文件中,注释掉 bind-address ,即在行首添加#
6、重启即可