Linux安装mysql8

1.更新下yum

[root@hadoop001 mysql]# yum -y update

2.确认系统版本(),从官网下载https://dev.mysql.com/downloads/repo/yum/对应的安装包

mysql80-community-release-el7-11.noarch.rpm,进行本地安装

[root@hadoop001 mysql]# ls
mysql80-community-release-el7-11.noarch.rpm
[root@hadoop001 mysql]# yum localinstall mysql80-community-release-el7-11.noarch.rpm

2.安装 mysql-community-server

[root@hadoop001 mysql]# yum -y install mysql-community-server

 3.启动mysql,并从日志中查看初始密码

[root@hadoop001 mysql]# systemctl start mysqld
[root@hadoop001 mysql]# cat /var/log/mysqld.log

 4.接下来修改初始密码

1)一般来说按照上述给定的初始密码能成功登录mysql!

首先就是要重置密码,不然使用任何其他语句都会报以下错误

首次重置密码一定要符合复杂性要求,不然会报错。

 成功改完密码后就可以正常使用其他语句了,可以查看一下当前对密码的复杂性要求参数

mysql> alter user 'root'@'localhost' identified by 'mysql@123M>';
Query OK, 0 rows affected (0.01 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.02 sec)

mysql> SHOW VARIABLES LIKE 'validate_password%';
+-------------------------------------------------+--------+
| Variable_name                                   | Value  |
+-------------------------------------------------+--------+
| validate_password.changed_characters_percentage | 0      |
| validate_password.check_user_name               | ON     |
| validate_password.dictionary_file               |        |
| validate_password.length                        | 8      |
| validate_password.mixed_case_count              | 1      |
| validate_password.number_count                  | 1      |
| validate_password.policy                        | MEDIUM |
| validate_password.special_char_count            | 1      |
+-------------------------------------------------+--------+
8 rows in set (0.01 sec)

 改低一点

mysql> set global validate_password.policy=LOW;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password.length=4;
Query OK, 0 rows affected (0.00 sec)

 发现可以改成以下密码也不会报错了

mysql> alter user 'root'@'localhost' identified by 'mysql';
Query OK, 0 rows affected (0.00 sec)

 

2)但如果遇到下面问题,

就换种方式,先改下文件,添加 skip-grant-tables

[root@hadoop001 mysql]# vim /etc/my.cnf 

 然后重启mysql

[root@hadoop001 mysql]# systemctl restart mysqld;

 现在可以不输入密码直接回车进入mysql

[root@hadoop001 mysql]# mysql -u root -p

 修改密码,要符合规定,记得flush privileges一下

mysql> use mysql;
mysql> alter user 'root'@'%' identified by 'mysql@123';
Query OK, 0 rows affected (0.01 sec)
mysql> flush privileges;

5.删除 skip-grant-tables,重启mysql,就可以用新密码进去了

6.关于设置远程登录,补充下 

这里报错可以看到是什么原因了

 重置一下,其实应该只要改root对应哪个,我索性都改了,因为自用也没什么关系

mysql> update user set host = '%' ;
Query OK, 4 rows affected (0.01 sec)
Rows matched: 4  Changed: 4  Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql>  alter user 'root'@'%' identified by 'mysql';
Query OK, 0 rows affected (0.00 sec)

 

posted on 2023-11-24 13:49  ifiwereaboy  阅读(18)  评论(0编辑  收藏  举报