说明
CentOS7内部集成了mariadb,是mysql的一个分支
下载安装包
centos的yum 源中默认是没有mysql的,所以我们需要先去官网下载mysql的repo源并安装;
- 访问官网,查看最新安装包
https://dev.mysql.com/downloads/repo/yum/
- 输入命令
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
安装mysql源
- 安装 yum repo 文件
rpm -ivh mysql80-community-release-el7-3.noarch.rpm
执行结果会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo mysql-community-source.repo
- 更新yum缓存
yum clean all
yum makecache
安装mysql服务器
-
yum repolist all | grep mysql
可以看到有些是被禁用的
启停服务命令
启动:systemctl start mysqld.service
停止:systemctl stop mysqld.service
重启:systemctl restart mysqld.service
查看服务状态:systemctl status mysqld.service
修改初始密码
-
查看初始密码
mysql在安装后会创建一个root@locahost账户,并且把初始的密码放到了/var/log/mysqld.log文件中;
查看:cat /var/log/mysqld.log
- 修改初始密码
ALTER USER USER() IDENTIFIED BY '新密码'
最好大小写、数字、特殊字符混合
设置远程连接
在mysql8.0创建用户和授权和之前不太一样了,其实严格上来讲,也不能说是不一样,只能说是更严格,mysql8.0需要先创建用户和设置密码,然后才能授权。
#先创建一个用户
create user 'root'@'%' identified by '123123';
#再进行授权
grant all privileges on *.* to 'root'@'%' with grant option;
MySQL8.0 安装完成后出现无法远程链接的现象,这是因为MySQL8.0 只支持 localhost 访问,我们必须设置一下才可以远程访问。
具体设置步骤如下:
① 登录MySQL
执行命令为:mysql -u root -p
回车后输入密码
② 选择 mysql 数据库
执行命令为:use mysql;
查看mysql 数据库中存储的用户信息的 user 表。
③ 查看mysql 数据库的 user 表中当前 root 用户的相关信息
执行命令为:select host,user,authentication_string,plugin from user;
执行完命令后显示一个表格, root 用户的 host默认显示的 localhost,说明只支持本地访问,不允许远程访问。
④ 更改 host 的默认配置
执行命令为:update user set host='%' where user='root';
⑤ 刷新
执行命令为:flush privileges;
设置防火墙
大功告成!