1.安装MySQL官方的yum repository
[root@localhost ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
2.下载rpm包
[root@localhost ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm
3.安装MySQL服务
[root@localhost ~]# yum -y install mysql-community-server
最后会出现个complete!
4.MySQL常用的命令:
重启:systemctl restart mysqld.service
停止:systemctl stop mysqld.service
查看状态:systemctl status mysqld.service
5.登录MySQL
[root@localhost ~]# mysql -u root -p
意思就是用root用户登录,然后准备输入密码。
第一次启动MySQL后,就会有临时密码,这个默认的初始密码在/var/log/mysqld.log文件中,我们可以用这个命令来查看:
grep "password" /var/log/mysqld.log
6.然后可以先跳过密码验证登录进MySQL
- 停止服务:
systemctl stop mysqld.service
- 修改mMySQL的配置文件:
vi /etc/my.cnf
- 在最后加上配置:
skip-grant-tables
- 然后再启动服务:
systemctl start mysqld.service
- 然后这时就可以跳过密码来登录mysql
mysql -u root
- 然后是修改下密码
mysql> use mysql;
Database changed
mysql> update mysql.user set authentication_string=password('4008') where user='root' ;
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 1
最后exit退出mysql,重新在刚刚那个配置文件中去掉skip-grant-tables,然后重启MySQL。
7.遇见的问题
明明已经重置了密码却还不行
百度上说的大致是密码等级太简单,如果你坚持要这样的密码,要改变密码等级:
mysql> set global validate_password_policy=0; //改变密码等级
mysql> set global validate_password_length=4; //改变密码最小长度
SET PASSWORD = PASSWORD('密码'); // 然后再输入刚刚的命令
然后再用 show databases;能正常访问了,但是使用Navicat工具登录还是报错了
1130 - Host '115.196.250.99' is not allowed to connect to this MySQL server
这里参考了 MySQL5.7初始化后5种密码重置方法中的方法3:使用update方式
mysql> UPDATE mysql.user SET authentication_string = PASSWORD('Marry583@&%!'), password_expired = 'N' WHERE User = 'root' AND Host = 'localhost';
Query OK, 1 row affected, 1 warning (0.00 sec)
mysql> flush privileges; // 这一步不能忘了,不然不会生效
Query OK, 0 rows affected (0.00 sec)
然后重新连接就成功了
1、参考
下载安装
https://www.cnblogs.com/wangshen31/p/9556804.html
2、修改权限表
https://blog.csdn.net/zd147896325/article/details/82427107
登录mysql
mysql -u root -p
重启服务:systemctl start mysqld.service
停止服务:systemctl stop mysqld.service
修改密码(https://www.cnblogs.com/reid21/p/9314376.html
)
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Tom579#$%^&';
ERROR 1290 (HY000): Unknown error 1290
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)