我的版本是mysql-8.0.25-winx64 ,社区免费版。
解压后看看目录下有没有my.ini,没有创建 内容如下 (下面的设置也很重要,设置错了也起不来,建议直接复制)
[mysqld]
# 设置3306端口
port=3306
# 自定义设置mysql的安装目录,即解压mysql压缩包的目录
basedir=D:\mysql-8.0.25-winx64\mysql-8.0.25-winx64
# 自定义设置mysql数据库的数据存放目录
datadir=D:\mysql-8.0.25-winx64\mysql-8.0.25-winx64\data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数,这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口和默认字符集
port=3306
default-character-set=utf8
1、然后看你解压目录下data目录存在不存在,有的是不存在的,不存在自己手动创建就行,存在的话就把data目录下的全部删除。
2、然后在解压目录下的bin目录下 文件栏输入cmd(此时你应该显示的目录是D:\mysql-8.0.25-winx64\mysql-8.0.25-winx64\bin(这是我自己的))。
3、输入 mysqld --initialize --user=mysql --console 初始化然后等会 会出现一个密码,复制出来。
4、mysqld -install(可有可无,有的会提示,已经存在,输入这个命令也没啥事)
5、net start mysql
然后修改密码
SET PASSWORD = ' ' ('你的密码');
use mysql;
update user set host = '%' where user = 'root'; //支持远程
FLUSH PRIVILEGES ;
然后再登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; //赋予任何主机访问数据的权限
FLUSH PRIVILEGES ;