【Linux】Ubuntu 安装 MySQL

…衆ロ難τιáo~ 提交于 2019-12-04 11:27:46

网上有人使用 deb 下载,但是我使用了不能更新,使用我使用了最传统的下载方式

apt-get install mysql-server

此时输入 mysql 命令就可以进入数据库,此时是使用 root 账户登录的,所以不需要用户名和密码

 

启动数据库,重启,关闭数据库

service mysql start 
service mysql restartservice mysql stop

 

出现的错误:Workbench 由于 root@localhost denied 导致的无法连接Mysql

mysql8.0 设置简单密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

通过语句排查,我发现是密码的安全设置的问题

root 进入 mysql 查看当前安全变量值,我发现我的password_length 为 8,password_policy 为 meditum

mysql> SHOW VARIABLES LIKE 'validate_password%';

 

 

 

 

 

而我只想设置一个简单的用户名如 test 或者密码如 123456 之类,因此修改密码设置,然后就好了

set global validate_password.policy=0;
set global validate_password.length=4;

 

设置新用户:

我这里设置一个用户 test 密码为 dddddd

允许本地 IP 访问 localhost, 127.0.0.1

create user 'test'@'localhost' identified by '123456';

允许外网 IP 访问

create user 'test'@'%' identified by '123456';

刷新授权

flush privileges;

 

此时这个新建的用户没有任何权限,我还要赋予它必要的权限

  • ALL: 所有可用的权限
  • CREATE: 创建库、表和索引
  • LOCK_TABLES: 锁定表
  • ALTER: 修改表
  • DELETE: 删除表
  • INSERT: 插入表或列
  • SELECT: 检索表或列的数据
  • CREATE_VIEW: 创建视图
  • SHOW_DATABASES: 列出数据库
  • DROP: 删除库、表和视图

语句如下

GRANT <privileges> ON <database>.<table> TO 'user_name'@'ip_address';

比如我为我的 test 外网用户创建了所有权限

grant all on *.* to 'test'@'%';

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!