参考了https://blog.csdn.net/weixin_38898423/article/details/103473895
原文写的很详细,可以看上面,这里只是自己备查
1、由于Centos7自带Mariadb,卸载
rpm -qa|grep mariadb
找到了,然后卸载
rpm -e --nodeps 查询得到的名称
2、下载
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
3、解压
tar -xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
4、转移到正式目录
mv mysql-8.0.20-linux-glibc2.12-x86_64 /usr/local/mysql
在下面建个data目录放数据
cd /usr/local/mysql
mkdir data
5、授权
groupadd mysql
useradd mysql
useradd -g mysql mysql
chown -R mysql.mysql mysql/usr/local/mysql
6、编写my.cnf
vi /etc/my.cnf
然后把下面代码复制粘贴报错
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
init-connect='SET NAMES utf8'
basedir=/usr/local/mysql #根据自己的安装目录填写
datadir=/usr/local/mysql/data #根据自己的mysql数据目录填写
socket=/tmp/mysql.sock
max_connections=200 # 允许最大连接数
character-set-server=utf8 # 服务端使用的字符集默认为8比特编码的latin1字符集
default-storage-engine=INNODB # 创建新表时将使用的默认存储引擎
或者下面这个也行
[mysql_safe]
# modify
log-error=/var/log/mysql/mysql-error.log
# modify
pid-file=/var/run/mysql/mysql.pid
#
# include all files form the config directory
#
!includedir /etc/my.cnf.d
[mysqld]
# 修改为自己mysql的根目录
basedir=/usr/local/mysql
# modify 修改为自己mysql根目录下的data目录,不存在也不要紧
datadir=/usr/local/mysql/data
# socket=/var/lib/mysql/mysql.sock
socket=/tmp/mysql.sock
# pid-file=/usr/local/mysql/tmp/mysql.pid
symbolic-links=0
# new 设置用户使用mysql
user=mysql
# new 缓存连接数
back_log=200
# new 最大连接数
max_connections=500
# new 使用mysql_native_password插件认证,否则native连不上,会提示需要升级版本
default_authentication_plugin=mysql_native_password
# new 服务端使用的字符集默认为UTF8
character-set-server=utf8mb4
# new 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# new
[mysql]
# new 设置字符编码为utf8mb4
default-character-set=utf8mb4
[client]
# new 其实是废的,需要改端口时才有用
port=3306
# new 设置字符编码为utf8mb4
default-character-set=utf8mb4
7、安装
到/usr/local/mysql下执行
bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
执行成功会显示临时的root密码
8、修改profile
vi /etc/profile
在最后添加
添加如下内容:
#MYSQL ENVIRONMENT
export PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib
更新环境变量
source /etc/profile
9、配置开机自启
到/usr/local/mysql/surrport-files下执行
cp mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig --add mysql
chkconfig --list mysql
etc/ld.so.conf要配置路径,不然报错
vi /etc/ld.so.conf
添加 /usr/local/mysql/lib
10、启动
service mysql start
显示成功后,用上面提到的返回的密码尝试登录
然后修改root@localhost的密码
alter user 'root'@'localhost' identified by 'root;123';
flush privileges;
11、配置防火墙端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
systemctl restart firewalld.service #重启防火墙
firewall-cmd --list-ports #查看是否开放成功
建立一个远程账号,连接试试
完毕!