一、卸载已安装MySQL
检查MariaDB
# 查看是否安装MariaDB
rpm -qa|grep mariadb
# 卸载MariaDB
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
检查MySQL
rpm -qa | grep mysql
# 假如有MySQL,卸载
rpm -e --nodeps mysql-libs-5.1.73-5.el6_6.x86_64
二、下载MySQL
下载Mysql(以下是直接在linux上下载)
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz
三、安装MySQL
解压MySQL安装包
tar -Jxvf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz -C /usr/local/
修改安装包目录名称
mv /usr/local/mysql-8.0.28-linux-glibc2.12-x86_64/ /usr/local/mysql-8.0.28
创建数据文件目录
mkdir /usr/local/mysql-8.0.28/data
创建MySQL用户组
#添加用户组
groupadd mysql
#添加用户
useradd -g mysql mysql
将MySQL安装包授权给MySQL用户
chown -R mysql:mysql /usr/local/mysql-8.0.28
创建配置文件
vim /etc/my.cnf
添加配置内容,输入i 进入编辑模式 复制粘贴后 按esc键 输入 :wq 保存文件
[mysql]
#设置mysql客户端默认字符集
default-character-set=utf8
[mysqld]
# 设置3306端口
port = 3306
# 设置mysql的安装目录
basedir=/usr/local/mysql-8.0.28
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql-8.0.28/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M
socket=/usr/local/mysql-8.0.28/mysql.sock
symbolic-links=0
[client]
port=3306
socket=/usr/local/mysql-8.0.28/mysql.sock
# 扩展配置文件目录
# !includedir /etc/my.cnf.d
初始化MySQL(记录登录密码)
cd /usr/local/mysql-8.0.28/bin/
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-8.0.28/ --datadir=/usr/local/mysql-8.0.28/data/ --user=mysql --initialize
初始化以后,记录下临时密码(密码拷贝到记事本 后面会用到)
添加为系统服务
cp /usr/local/mysql-8.0.28/support-files/mysql.server /etc/init.d/mysql
chkconfig --add mysql
启动MySQL
service mysql start
查看启动状态
service mysql status
将mysql命令添加到服务
ln -s /usr/local/mysql-8.0.28/bin/mysql /usr/bin
四、配置MySQL远程登录
登录MySQL
mysql -uroot -p
此时可能出现下图错误
一些包缺失引起的,执行下列命令
sudo ln -s /usr/lib64/libtinfo.so.6.1 /usr/lib64/libtinfo.so.5
重新登录mysql mysql -uroot -p 密码使用之前记录的密码
修改root密码 其中root@123456是新的密码自己设置,密码最好包含大小写
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root@123456';
执行 使密码生效
flush privileges;
选择mysql数据库
use mysql;
修改远程连接并生效
update user set host='%' where user='root';
flush privileges;
这样就能远程登录了,好用的话可以点赞收藏评论,谢谢~