检察MySQL安装包
接下来可以使用以下命令安装MySQL服务器:
- # 安装最新版本
- sudo apt install -y mysql-server
- # 安装指定版本
- sudo apt install -y mysql-server-8.0
复制代码
- 初始化设置信息
- sudo mysql_secure_installation
复制代码
- VALIDATE PASSWORD COMPONENT can be used to test passwords and improve security Would you like to setup VALIDATE PASSWORD component?(使用暗码强校验组件)-> n
- (假如输入y 之后会让你选level 0/1/2,跳过为root设置暗码,由于默认环境下使用auth_socket举行身份验证)
- 输入n、不使用校验组件,请你直接设置暗码、之后用sudo mysql -u root -p举行登录
- New Password:(设置新暗码,并重复一遍)
- Remove anonymous users (删除匿名用户) n
- Disallow root login remotely(拒绝长途root账号登录) n
- Remove test database and access to it(移除test数据库) n
- Reload privilege tables now (现在就重新载入权限表) y
之前没有设置暗码
使用sudo mysql -u root登录
- mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY '123456';
- ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
- # 密码必须8位
复制代码 ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
是由于之前设置的等级为medium,要求长度>= 8、数字、混合巨细写和特殊字符
留意这个mysql 5.7的设置方式不一样
- SET GLOBAL validate_password.policy = 'LOW';
- # 设置密码策略为低
- # mysql 5.7
- set global validate_password_policy='LOW';
复制代码 检察当前暗码长度
select @@validate_password.length;
- select @@validate_password_length;
复制代码 ±---------------------------+
| @@validate_password.length |
±---------------------------+
| 8 |
±---------------------------+
1 row in set (0.00 sec)
设置暗码长度
- set global validate_password.length=6;
复制代码
- 更改默认 root 用户的认证方法(如有须要):
默认环境下,MySQL 使用 auth_socket 组件对 root 举行身份验证,这大概会阻止长途登录。要改为使用暗码认证,请执行以下命令:
- ALTER USER 'root'@'localhost' IDENTIFIED WITH 'mysql_native_password' BY 'SSKS#dd';
- FLUSH PRIVILEGES;
复制代码 检察当前mysql的用户
- SELECT User, Host FROM mysql.user;
复制代码 mysql> SELECT User, Host FROM mysql.user;
±-----------------±----------+
| User | Host |
±-----------------±----------+
| debian-sys-maint | localhost |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
±-----------------±----------+
5 rows in set (0.00 sec)
- 创建一个允许长途访问的 root 用户:
接下来,创建一个与您的 root 用户雷同权限的用户,但允许从任何主机连接。
6.1 不再别的创建root,直接使用mysql创建的root用户
- update user set Host='%' where User='root';
复制代码 授予权限
- GRANT ALL ON *.* TO 'root'@'%';
- FLUSH PRIVILEGES; # 刷新权限
复制代码 创建自己的root用户
- CREATE USER 'root'@'%' IDENTIFIED BY 'SSKS#dd';
- GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
- FLUSH PRIVILEGES;
复制代码 mysql> CREATE USER ‘root’@‘%’ IDENTIFIED BY ‘123456’;
Query OK, 0 rows affected (0.10 sec)
mysql> GRANT ALL PRIVILEGES ON . TO ‘root’@‘%’ WITH GRANT OPTION;
Query OK, 0 rows affected (0.11 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec)
mysql> SELECT User, Host FROM mysql.user;
±-----------------±----------+
| User | Host |
±-----------------±----------+
| root | % |
| debian-sys-maint | localhost |
| mysql.infoschema | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
±-----------------±----------+
6 rows in set (0.00 sec)
编辑 MySQL 设置文件,通常在 /etc/mysql/mysql.conf.d/mysqld.cnf 或 /etc/mysql/my.cnf。
- sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
复制代码 找到 bind-address 和mysqlx-bind-address项,把127.0.0.1更改为 0.0.0.0 或注释掉这两行,以允许从任何 IP 所在连接。
- bind-address = 0.0.0.0
- mysqlx-bind-address = 0.0.0.0 # 这个步骤也可以不设置
复制代码 使用Navicat 17登录
连接乐成
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |