赞
踩
http://dev.mysql.com/downloads/mysql/
我下载的是历史版本:8.0.27
配置两个系统变量(mysql解压位置:D:\Program Files\mysql-8.0.27-winx64):
一个新增MySQL ,变量值设置:D:\Program Files\mysql-8.0.27-winx64;
一个编辑path值,新增变量值:D:\Program Files\mysql-8.0.27-winx64\bin 或 %MySQL%\bin。
[mysqld] # 设置3306端口 port=3306 # 设置mysql的安装目录 basedir=D:\Program Files\mysql-8.0.27-winx64 # 设置mysql数据库的数据的存放目录 datadir=D:\Program Files\mysql-8.0.27-winx64\Data # 允许最大连接数 max_connections=200 # 允许连接失败的次数。 max_connect_errors=10 # 服务端使用的字符集默认为utf8mb4 character-set-server=utf8mb4 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB # 默认使用“mysql_native_password”插件认证 #mysql_native_password default_authentication_plugin=mysql_native_password [mysql] # 设置mysql客户端默认字符集 default-character-set=utf8mb4 [client] # 设置mysql客户端连接服务端时默认使用的端口 port=3306 default-character-set=utf8mb4
先以管理员身份打开命令提示符(cmd)
# mysqld --install 服务名,此处mysql8作为服务名,也可以不写,用默认(本人用的默认)
mysqld --install mysql8
或
mysqld --install
注意:初始化有默认密码,需记住,后边登录用的到。
# 路径一定要在安装文件夹
mysqld --initialize --console
如果没有生成data文件夹,则使用以下命令
mysqld --initialize-insecure --user=mysql
# net start 服务名
net start mysql
使用默认分配的密码(即初始密码)进行登录
mysql -uroot -p初始密码
修改登录密码:
update user set authentication_string='自定义密码' where user='root';
提示成功,一定要使用以下命令,再退出
flush privileges;
exit;
密码修改成功!
百度一下,别人文档中有提到打开mysql根目录下的data文件夹,找到后缀是.err的文件以文本打开找到password临时密码(可以ctrl+f搜索)然后在cmd中输入该临时密码,但是我这里的.err文件中没有password,所以使用重置密码的方法
(1)如果启动了mysql服务,就要停止mysql服务,使用命令
net stop mysql
(2)使用mysqld –skip-grant-tables实测在mysql8.0.27中已失效,现使用以下命令进入免密登录模式
mysqld --console --skip-grant-tables --shared-memory
(3) 另外开一个cmd窗口,使用mysql直接无密登录。输入以下命令回车,提示输入密码时再按回车进入
mysql -uroot -p
(4)选择数据库,输入
use mysql
(5)密码置空
update user set authentication_string='' where user='root';
提示成功,一定要使用以下命令,再退出
flush privileges;
exit;
密码修改成功!
(6)关闭免密登录模式的cmd窗口,启动mysql服务
net start mysql
(7)步骤(5)密码已经置空,所以无密码状态登录MySQL,输入登录命令:
mysql -u root -p
(8)修改密码
alter user 'root'@'localhost' identified with mysql_native_password BY '123456';
提示成功,一定要使用以下命令,刷新权限,再退出
flush privileges;
exit;
密码修改成功!可以登录了!
首先保证mysql已启动。
$mysql -u root -p
Enter password:
use mysql
update user set host='%' where user='root';
刷新:
flush privileges;
重启mysql ,root 用户即可远程登录。
(1)创建一个用于远程登陆的用户test,密码123456:
CREATE USER 'test'@'%' IDENTIFIED BY '123456';
(2)给上面创建的test用户授予所有权限:
GRANT ALL ON *.* TO 'test'@'%';
(3)刷新保存(执行完这句后上面的更改才能生效):
FLUSH PRIVILEGES;
查看所用的用户以及允许访问的地址和加密方式:
select user,host,plugin from user;
(4) exit 退出,重启mysql,新建用户就可以远程连接了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。