首页 > 技术文章 > 阿里云Centos7安装mysql5.7

myblogstart 2020-08-21 22:12 原文

 一、下载mysql5.7


# 下载mysql的rpm包
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
# 安装yum
rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
#查看yum仓库mysql启动列表
yum repolist enabled | grep mysql
# 通过yum安装mysql
yum install mysql-community-server

## 二、启动mysql的服务
注意这里是centos7以上的命令,centos6可能有些许不同

#启动MySQL服务
systemctl start mysqld.service

#查看MySQL启动状态
systemctl status mysqld.service

#设置开机启动
systemctl enable mysqld
systemctl daemon-reload

我们可以用如下命令查看mysql的状态

netstat -nlp


## 三、登录mysql并修改密码
大家可能有注意到这和我们在windows上用installer安装有些不同,我们没有经过任何配置甚至是设置端口和密码就已经安装好了,其实mysql在/var/log/mysqld.log文件中给root用户设置了一个初始的密码。

# 查看mysqk的初始密码♥
grep "password" /var/log/mysqld.log


用上述的命令我们可以查看到mysql的初始密码,可以用这个密码登录

mysql -uroot -p


登陆成功后需要注意:用该密码登录到服务端后,必须马上修改密码,不然会报如下错误:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.


我们需要重新设置密码,且密码不能够太简单,至少是八位,且至少包含一个数字,一个特殊字符以及大小写字符各一个.详情可以查看这篇文章

https://www.cnblogs.com/ivictor/p/5142809.html

修改密码,by后面就是密码

ALTER user 'root'@'localhost' identified by '****'


用exit命令退出mysql,然后需要对数据库进行配置,默认的配置文件是/etc目录下的my.cnf文件,我们是用vim编辑器打开

vim /etc/my.cnf

 

[client]
default-character-set=utf8mb4
[mysql]
default-character-set=utf8mb4
[mysqld]
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
character-set-client-handshake = FALSE

character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci

init_connect = 'SET NAMES utf8mb4'
lower_case_table_names = 1
bind-address = 0.0.0.0 # 表示允许任何主机登陆,为了使用navicat远程登录

 


最后对数据库进行授权远程登录

# 登陆数据库
mysql -uroot -p

# 使用数据库
use mysql;

# 设置权限,新建一个admin用户密码为123456,*.*表示可以对所有数据库所有表进行操作,%是指所有主机都能访问,这里你也可以对root用户授权进行远程访问
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

# 刷新权限
flush privileges;

#退出,重启服务
service mysqld restart

 


如果Centos7防火墙没关需要关闭防火墙或者开放3306端口,这里我直接关闭防火墙

systemctl status firewalld.service # 查看防火墙状态
systemctl stop firewalld.service # 关闭防火墙

 

最后,我是用的是阿里云一定要在阿里云管理控制台找的实例中将3306端口加入到入网安全组,否则使用navicat连接会报错,如图

完成!!使用navicat测试

以上是我个人笔记,如有错误请指出!!

 

推荐阅读