1.下载mysql
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
2.解压mysql
tar -zxvf mysql-5.7.31-linux-glibc2.12-x86_64.tar.gz
3.将目录copy一份到/usr/local/mysql目录
cp -r mysql-5.7.31-linux-glibc2.12-x86_64 /usr/local/mysql
4.添加mysql用户组以及用户
groupadd mysql
useradd -g mysql mysql
5.切换到mysql目录开始安装
cd /usr/local/mysql
mkdir -p ./data/mysql
chown -R mysql:mysql ./
6.检测是否已经安装过mysql:
rpm -qa|grep mysql
如果有就卸载:
#rpm -e --nodeps mysql-libs-5.1.52-1.el6_0.1.x86_64
7.检测是否有mariadb
rpm -qa|grep mariadb
如果有则进行删除
#rpm -e --nodeps mariadb-libs-5.5.65-1.el7.x86_64
8.在/usr/local/mysql/support-files目录下创建my_default.cnf文件
[mysqld]
#设置mysql的安装目录
basedir =/usr/local/mysql
#设置mysql数据库的数据存放目录
datadir = /usr/local/mysql/data
#设置端口
port = 3306
socket = /tmp/mysql.sock
#设置字符集
character-set-server=utf8
#日志存放目录
log-error = /usr/local/mysql/data/mysqld.log
pid-file = /usr/local/mysql/data/mysqld.pid
#允许时间类型的数据为零(去掉NO_ZERO_IN_DATE,NO_ZERO_DATE)
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
9.拷贝文件my_default.cnf到/etc/my.cnf:
cp my_default.cnf /etc/my.cnf
10.初始化mysql:
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
11.查看日志:
cat /usr/local/mysql/data/mysqld.log
9lo)dU%TLDr8为root账号的临时密码(后面会用到)
12.启动脚本拷贝
cp support-files/mysql.server /etc/init.d/mysql
13.启动mysql:
service mysql start
14.为了全局使用mysql,这边建立一个软链接
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
15.连接数据库更改密码:
mysql -uroot -p
输入之前的临时密码
9lo)dU%TLDr8
16.开始设置密码:
mysql>set password=password('abcd1234');
mysql>grant all privileges on *.* to root@'%' identified by 'abcd1234';
17.添加远程访问权限
mysql> use mysql;
mysql>update user set host='%' where user = 'root';
18.远程连接访问不上可能会因为防火墙的问题,centos关闭防火墙:
systemctl stop firewalld.service
systemctl disable firewalld.service
19.最后测试连接:
20.mysql重启:
service mysql restart