一、安装MySQL准备工作
1、MySQL安装包可以从官网下载
访问官网地址:https://dev.mysql.com 显示网址页面如图:
2、可以从以下资源分享链接下载数据安装包,提供包版本为MySQL5.7

3、可以使用sftp或者ftp软件上传软件安装包到服务器中,或者使用Linux服务器自带的lrzsz命令上传

二、安装MySQL数据库
1、将数据库解压包放置到/usr/local目录中
tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
2、将mysql数据库重命名
cd /usr/local/
mv mysql-5.7.17-linux-glibc2.5-x86_64/ mysql
3、在服务器中创建MySQL用户和用户组,后面mysql就使用这个用户来运行(注意这也是mysql启动脚本中默认的用户,因此最好不要改名)。
groupadd mysql
useradd -r -g mysql mysql4、建立目录MySQL数据目录,并添加写权限,用于存放MySQL数据文件;
mkdir /data/mysql/data -p
chown -R mysql:mysql /data
chown -R mysql:mysql /data/mysql/
chown -R mysql:mysql /data/mysql/data/
#初始化
cd /usr/local/mysql
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql/data第一次初始化时数据库生成的随机密码,后续进入数据库后需要修改

如果报错:"./bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No" ;表示缺少依赖包。
解决方法:"#yum install -y libaio"
5、创建my.cnf配置文件,再创建tmp目录,并分配权限。
mkdir /data/mysql/data/tmp/ -p
chown -R mysql:mysql /data/mysql/data/tmp/
将mysql/support-files下的my-default.cnf改名为my.cnf,拷到/etc下:
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnfmy.cnf中关键配置:
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql/data
port = 3306
server_id = 129
socket = /data/mysql/data/tmp/mysql.sock
character-set-server = utf8
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
socket=/data/mysql/data/tmp/mysql.sock
6、加入MySQL为系统服务
cd /usr/local/mysql
cp support-files/mysql.server /etc/init.d/mysqld
chkconfig mysqld on
chkconfig --list | grep mysqld
chmod 755 /etc/init.d/mysqld
为MySQL配置环境变量
vi /etc/profile
export PATH=/usr/local/mysql/bin:$PATH
source /etc/profile检查MySQL是否能开启
service mysqld start
7、开始连接MySQL,将之前初始化时数据库生成的随机密码复制
mysql -uroot -pjIhNzbsnC0.g
mysql> set password=password("123456");
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';
mysql> flush privileges;

使用\s命令查看MySQL的安装信息

将修改好的数据库密码重新验证测试登录MySQL数据库

8、将本地服务器防火墙加入数据库端口或者关闭防火墙,可以使用第三方工具直连测试MySQL数据库
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
firewall-cmd --list-all
#关闭防火墙
systemctl stop firewalld.service
#查看防火墙状态
systemctl status firewalld.service

9、这里我使用navicat premium工具测试连接MySQL数据库

