我需要单独设置一个mysql账户来给别人使用
使用管理员账户登录
mysql -u root -p
输入密码
首先创建一个mysql账户
CREATE USER 'songYu'@'%' IDENTIFIED BY 'pass123456';
- 如果需要修改密码:
update mysql.user set password=password('键入新密码') where user='songYu';
授权数据库权限给用户。
- 查看有哪些数据库:`show databases;
- 授权:
grant all privileges on 数据库名.* to 'songYu'@'%';
flush privileges;
在nodejs中连接指定账户报错
ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
说nodejs连接mysql8.0的验证不通过。
解决办法
- 使用root登录mysql
- 键入:
ALTER USER 'songYu'@'%' IDENTIFIED WITH mysql_native_password BY 'pass123456';
- % 表示外网可访问,如果是本地用localhost
- pass123456 是账户的密码
- 刷新使其生效:
flush privileges;