网上有人使用 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'@'%';