报错
Win环境
服务名无效
因为重装了系统,注册表刷新,所以mysql服务不存在了。
配置系统变量,path,新增mysql根目录.执行↓
初始化,慎用.
请先备份根目录下的老的data目录。
mysqld --initialize --user=mysql --console # 初始化,慎用。保证mysql根目录没有老的data目录
响应日志,幸好没有error↓
mysqld -install # 注册mysql服务,很关键
美好的一天↓
net start mysql # 继续
打完收工↓
mysql -u root -p # 登录试试
很遗憾,被拒绝访问了,看样子是白名单问题.
停止服务,my.ini或my-default.ini添加skip-grant-tables
,放在最后一行.Linux执行mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
.然后开启服务.
执行登录命令后,很遗憾继续报错↓
不过这次不同了.是因为服务启动失败。删除my.ini,再次执行命令,服务正常启动.
天晴↓
原来是my.ini问题,附上my.ini配置↓
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
#设置3306端口
# port=3306
# 设置mysql的安装目录
basedir=D:\Program Files\MySQL\MySQL Server 5.7
# 设置mysql数据库的数据的存放目录
# datadir=
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
skip-grant-tables
设置新密码。
use mysql;
update user set authentication_string = password('root'), password_expired = 'N', password_last_changed = now() where user = 'root';
去掉my.ini里的skip-grant-tables。重启mysql即可。