CentOS在线安装Mysql5.7

时间:2021-03-23 23:27:22

一、通过Yum命令安装

1.下载rpm安装源

官方地址:https://dev.mysql.com/downloads/repo/yum/

rpm文件地址:https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

1)通过wget命令下载文件

[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
---- ::-- https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
正在解析主机 dev.mysql.com (dev.mysql.com)... 137.254.60.11
正在连接 dev.mysql.com (dev.mysql.com)|137.254.60.11|:... 已连接。
已发出 HTTP 请求,正在等待回应... Found
位置:https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm [跟随至新的 URL]
---- ::-- https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm
正在解析主机 repo.mysql.com (repo.mysql.com)... 23.1.165.122
正在连接 repo.mysql.com (repo.mysql.com)|23.1.165.122|:... 已连接。
已发出 HTTP 请求,正在等待回应... OK
长度: (25K) [application/x-redhat-package-manager]
正在保存至: “mysql57-community-release-el7-.noarch.rpm” %[==================================================================================================================================================================================================>] , --.-K/s 用时 .1s -- :: ( KB/s) - 已保存 “mysql57-community-release-el7-.noarch.rpm” [/]) [root@localhost ~]#

2.安装Mysql

1)安装Mysql源文件

yum localinstall -y mysql57-community-release-el7-11.noarch.rpm

2)查看Mysql源是否安装成功

[root@localhost ~]# yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64 MySQL Connectors Community
mysql-tools-community/x86_64 MySQL Tools Community
mysql57-community/x86_64 MySQL 5.7 Community Server
[root@localhost ~]#

3)安装Mysql服务

yum install -y mysql-community-server

4)查看Mysql服务是否安装成功

[root@localhost ~]# systemctl status mysqld
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: inactive (dead)
Docs: man:mysqld()
http://dev.mysql.com/doc/refman/en/using-systemd.html
[root@localhost ~]#

3.启动Mysql

systemctl start mysqld

4.修改root登录密码

1)获取root默认密码(由于Mysql安全策略升级,安装完成后系统自动设置了一个随机密码)

[root@localhost ~]# grep 'temporary password' /var/log/mysqld.log
--08T09::.780623Z [Note] A temporary password is generated for root@localhost: auw;Nj7J!j/J
[root@localhost ~]#

2)登录Mysql

[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.7. Copyright (c) , , Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql>

3)修改密码

3.1)由于Mysql默认要求设置密码复杂度高(必须包含 大小写字母、数字、符号)

mysql> alter user 'root'@'localhost' identified by '';
ERROR (HY000): Your password does not satisfy the current policy requirements
mysql>

这样设置是合法的:

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

3.2)关闭Mysql密码校验规则,允许设置简单密码

3.2.1)在Mysql配置文件最后加入:validate_password = off

[root@localhost ~]# vi /etc/my.cnf
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html [mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at % of total RAM for dedicated server, else %.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock # Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links= log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid validate_password = off

3.2.2)重启Mysql服务生效

systemctl restart mysqld

4)设置简单密码 :)

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

5.配置远程用户登录

1)指定Ip

mysql> grant all privileges on *.* to 'root'@'192.168.1.1' identified by '' with grant option;
Query OK, rows affected, warning (0.00 sec) mysql>

2)允许所有

mysql> grant all privileges on *.* to 'root'@'%' identified by '' with grant option;
Query OK, rows affected, warning (0.00 sec) mysql>

6.设置开机启动

systemctl enable mysqld

systemctl daemon-reload

7.其他

1)已配置远程访问权限,依然不能登录?请检查系统是否开启了防火墙。

1.1)CentOS关闭防火墙

systemctl stop firewalld.service

1.2)禁止防火墙开机启动

systemctl disable firewalld.service

2)Mysql客户端软件(推荐)

2.1)SQLyog(官网:https://sqlyog.en.softonic.com/)

2.2)Navicat(官网:https://www.navicat.com/en/)