由于我是zip文件下载的,所以没有my.ini文件
刚开始,我在下载目录下创建了my.ini,但是basedir,datadir忘记修改成自己的了,我对服务器进行了重启,但是这个文件并没有生效,没有出现问题,所以我误认为自己配置成功。但是,在今天我打开数据库时,显示连接不上localhost,所以我进行了一下操作。
突然出现连不上localhost用户,可以尝试先把Data文件夹清空,然后remove mysql80,
重新初始化,记住自动生成的密码,安装服务,登录,修改密码。
但我发现我的my.ini并没生效,所以根本问题个人认为是电脑系统更新,服务器重新初始化启动,文件生效,所以会报错。现在没错,之后在进行重新生成,也会有错。
于是我进行了以下操作,
现在重新配置my.ini文件,把之前的my.ini删除。
操作参考下面文章,在不同操作我遇到了些问题,记录下。
解决Mysql安装之后没有my.ini配置文件问题 - dreamw - 博客园 (cnblogs.com)
第一步,删除服务
- 管理员身份打开控制台
- 输入--> sc delete mysql80
- mysql80是服务的名字,可以在电脑右键->更多->管理->服务中看到。
第二步,初始化data目录
data目录下就是放的表数据和表结构,基本的mysql,sys等表都在里面。
- 我们首先要把data目录中的所有数据删掉
- 输入:mysqld --initialize-insecure --user=mysql
- 可以看到data目录中多了很多文件
第三步,用my.ini文件install服务
找了很多my.ini在进行后面的开启服务器时,都会报错 --> 服务器开启后停止。但是这个成功了,注意看里面的注释。
一定要把basedir和datadir改了。
在桌面新建文档,在mysql安装目录下没办法建文档。把下面的代码复制到文档中,重命名为my.ini 注意保存格式改为ANIS,不要用utf8
[mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir="C:\Program Files\MySQL\mysql-8.3.0-winx64" # 设置mysql数据库的数据的存放目录 #datadir=C:\Program Files\MySQL\mysql-8.3.0-winx64\data (注释掉,也不要手动创建data文件夹) # 允许最大连接数 max_connections=200 # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统 max_connect_errors=10 # 服务端使用的字符集默认为UTF8 character-set-server=UTF8MB4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 默认使用“mysql_native_password”插件认证 default_authentication_plugin=mysql_native_password [mysql] # 设置mysql客户端默认字符集 default-character-set=UTF8MB4 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=UTF8MB4
输入命令,重新安装mysql服务,同时绑定my.ini配置文件
mysqld --install mysql80 --defaults-file="XXX/my.ini"
第四步,开启服务器
输入:net start mysql80
第五步,修改密码
输入 mysql -uroot -p后,显示输入密码,直接回车即可。
输入下面命令,就可修改密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
关于mysql文件路径
- 错误日志在C:\Program Files\MySQL\mysql-8.3.0-winx64\data下的err文件 --> 有错误看详细的哪部分错可以来看日志
- mysql查询文件 C:\Users\huawei\Documents\Navicat\MySQL\Servers 相关笔记可以查到
- mysql数据库文件 C:\Program Files\MySQL\mysql-8.3.0-winx64\data