CentOS7 安装 MySQL

在 CentOS7 中我们在安装 MySQL 的话会默认安装的是 MariaDB。它是一个在 MySQL 被收购之后,作者推出的应一个开源版本。但是,我们可能还是会想安装更纯正的 MySQL

下载并安装MySQL官方的 Yum Repository

在 MySQl 的官网上我们可以 Yum Repository 的下载链接。

wget -i -c https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm

推荐使用清华的mysql镜像源进行安装

centos 的镜像源也推荐使用清华的。

使用上边的命令我们就下载到了 Yum Repository,之后我们就可以使用 yum 来进行安装了。

yum -y install mysql80-community-release-el7-1.noarch.rpm

接下来我们就是要开始安装 MySQL

yum -y install mysql-community-server

MySQL 设置


启动 MySQL
systemctl start mysqld.service

查看运行状态

systemctl status mysqld.service

此时,我们的数据库已经运行起来了,不过我们要进入我们的数据库的话还需要在日志中找到我们的 root 用户的密码。在新的版本中,默认生成了 root 用户密码。

cat /var/log/mysqld.log | grep password

通过上边的命令我们可以查看到我们的 root 用户的密码。

mysql -uroot -p 输入密码进入数据库。

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

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

这里密码要有一定的复杂度。
修改完密码之后我们就可以进行正常的操作了。

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

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

开机启动

shell> systemctl enable mysqld
shell> systemctl daemon-reload

添加远程登录用户

默认只允许root帐户在本地登录,如果要在其它机器上连接mysql,必须修改root允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,我添加一个新的帐户:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'yangxin'@'%' IDENTIFIED BY 'Yangxin0917!' WITH GRANT OPTION;

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

mysql8和原来的版本有点不一样,8的安全级别更高,所以在创建远程连接用户的时候,

不能用原来的命令(同时创建用户和赋权):

必须先创建用户(密码规则:mysql8.0以上密码策略限制必须要大小写加数字特殊符号):

创建用户
mysql>create user chenadmin@'%' identified  by 'Chenadmin0.';
进行赋值
mysql>grant all privileges on *.* to chenadmin@'%' with grant option;
最后刷新
mysql>flush privileges;

配置默认编码为utf8

改/etc/my.cnf配置文件,在[mysqld]下添加编码配置,如下所示:

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'

重新启动mysql服务

systemctl restart mysqld

原文地址:https://www.cnblogs.com/dowhile/p/CentOS7-an-zhuang-MySQL.html