centos7安装myslq5.7

2019-07-19 11:51:10 查看 2046 回复 0

在CentOS中默认安装有MariaDB,这个是MySQL的分支,但为了需要,还是要在系统中安装MySQL,而且安装完成之后可以直接覆盖掉MariaDB。

1. 下载mysql5.7安装包

    前往官方网站复制yum源链接Mysql官网

6275828-80edd2f959ef47d0

QQ截图20190719105758

执行 wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm 进行下载

2.进行yum源安装

执行 rpm -ivh mysql80-community-release-el7-1.noarch.rpm 命令

接下来可以通过 yum repolist all | grep mysql 查看yum源中的mysql安装包

3.进行mysql安装

可以看到yum源中默认启用的安装包版本为MySQL8.0,如果需要切换为5.7,需要运行以下命令;

yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community

注意:yum-config-manager默认使用的是python2版本环境,如果用户使用这个命令时报错,可能是因为当前默认python版本为python3版本。需要在/bin/yum-config-manager文件中修改文件头#!/usr/bin/python -tt #!/usr/bin/python2 -tt

或者第一步 执行 wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm


之后就开始安装MySQL服务器 yum -y install mysql-community-server

4. 启动mysql服务

systemctl start mysqld.service来启动mysql服务,

systemctl status mysqld.service可查看mysql服务运行状态

systemctl enable mysqld  设置mysql服务开机自启运行

systemctl is-enabled mysqld.service 查看设置自启是否成功

systemctl list-unit-files|grep enabled    查看所有自启动列表

5.设置mysql

此时MySQL已经开始正常运行,不过要想进入MySQL还得先找出此时root用户的密码

通过如下命令可以在日志文件中找出密码:grep "password" /var/log/mysqld.log

输入命令进入数据库:mysql -uroot -p

输入初始密码,此时不能做任何事情,因为MySQL默认必须修改密码之后才能操作数据库:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';

 这里有个问题,新密码设置的时候如果设置的过于简单会报错:Your password does not satisfy the current policy requirements.

 可以通过如下命令修改:

set global validate_password_policy=0;
set global validate_password_length=1;

但此时还有一个问题,就是因为安装了Yum Repository,以后每次yum操作都会自动更新,需要把这个卸载掉:

yum -y remove mysql80-community-release-el7-1.noarch

6.添加用户及赋予权限

登录数据库以后执行

GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
FLUSH PRIVILEGES;

这里的USERNAME是你的数据库账户,PASSWORD是你的数据库密码

查看数据库用户

mysql> use mysql;
mysql> select host,user from mysql.user;

7.远程访问

尝试登录刚才创建的用户,远程登录。如果报错  Can’t connect to MySQL server (10061),表示没有远程权限。

修改/etc/init.d/my.cnf或者/etc/mysql/mysql.conf.d/mysqld.cnf文件,将文件中的“bind-address = 127.0.0.1”改为“bind-address = 0.0.0.0”