1、官网下载:https://dev.mysql.com/downloads/mysql/
2、在根目录下添加data空文件夹(存放数据文件)my.ini配置文件
3、my.ini设置配置信息
[mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=D:\work_program_file\mysql-8.0.17-winx64 # 设置mysql数据库的数据的存放目录 datadir=D:\work_program_file\mysql-8.0.17-winx64\data # 允许最大连接数 max_connections=200 # 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统 max_connect_errors=10 # 服务端使用的字符集默认为UTF8 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8
4、配置环境变量
path配置到bin目录
5、以管理员身份运行CMD
切到mysql根目录
执行mysql初始化,同时生成初始随机密码(重要步骤,不初始化可能会有1067等错误)输入mysqld --initialize --user=mysql --console
初始化完后,cmd信息中可以看到初始密码,在用户信息后面 root@localhost XXXXXXXX
添加mysql服务:mysqld -install
如果提示错误Install/Remove of the Service Denied win+x 选择管理员CMD打开
启动mysql服务:net start mysql
如果启动服务失败,提示发生系统错误2 系统找不到指定文件
按win+r输入regedit打开注册表,找到
HKEY_LOCAL_MACHINE-SYSTEM-CurrentControlSet-services-mysql(上面mysqld -install步骤执行后会有这个服务名)-ImagePath
将值改成自己的
"D:work_program_filemysql-8.0.17-winx64inmysqld" --defaults-file="D:work_program_filemysql-8.0.17-winx64my.ini" mysql
然后再start可以启动了
如果启动还是失败,大部分原因是电脑有另外运行着别的版本的mysql服务,按win+r,输入service.msc找到除了当前8版本mysql服务的其它服务,停止并禁用。
启动服务后,登录用户:mysql -u root -p
提示输入密码,这里输入上面初始化的随机密码XXXXXXXX
mysql8修改密码:ALTER USER root@localhost IDENTIFIED BY 'qwerty';
修改完后通过mysql -u root -p输入新密码测试连接。
PS:如果cmd可以通过新密码连接,但是编辑器,如sqlyog等连接不了,报2058,则可能是加密问题
这时候,在cmd登录用户,用下面的命令修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'qwerty';
最后,编辑器也连接OK。