ContOS安装MySQL
图
MySQL做为最常用的关系型数据库,其安装方式是需要掌握的,无论搭建工作环境还是搭建学习环境,本章记录了在CentOS8系统中安装MySQL8的方式,便于MySQL环境的搭建

官网下载

官方下载网站,新的地址MySQL Community Downloads

镜像选择

进入清华镜像网站搜索MySQL

图

进入下载,选择版本,找到类型mysql-8.0.28-1.el8.x86_64.rpm-bundle.tar的包复制链接

图

在CentOS中使用wget进行下载

删除已有数据库

查看已有数据库
rpm -qa | grep mysql
rpm -qa | grep mariadb
移除已有数据库
rpm -e --nodeps mariadb-xxx

安装

创建mysql文件夹,并将tar包放入其中进行解压

tar -xvf mysql-8.0.25-1.el8.x86_64.rpm-bundle.tar

图

顺序安装以下rpm包

rpm -ivh mysql-community-common-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-client-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.28-1.el8.x86_64.rpm
rpm -ivh mysql-community-server-8.0.28-1.el8.x86_64.rpm --force --nodeps  # 注意末尾强制安装指令,否则会报错

启动

systemctl start mysqld
查看
netstat -ntulp | grep 3306
开机启动
systemctl enable mysqld

访问

获取密码

cat /var/log/mysqld.log | grep password

图

修改密码

MySQL有密码强校验机制,简单密码无法设置,可以先关闭

vim /etc/my.cnf
# 新增
validate_password.check_user_name=OFF
validate_password.length=4
validate_password.mixed_case_count=0
validate_password.number_count=0
validate_password.policy=0
validate_password.special_char_count=0

图

重启服务systemctl restart mysqld

进入MySQL修改密码

mysql -uroot -p
alter user 'root'@'localhost' identified by '123456';

远程访问

注意:root用户无法通过远程进行访问的,如果需要远程访问,需要添加一个普通用户并授权访问

# 创建一个用户指定密码格式和密码
CREATE USER `authUser`@`%` IDENTIFIED WITH mysql_native_password BY '123456';
# 授权
GRANT ALL ON *.* TO `authUser`@`%` WITH GRANT OPTION;
# 刷新
FLUSH PRIVILEGES;

如果远程无法访问,注意需要开启防火墙

# 查看已开放端口
firewall-cmd --list-all
# 开放端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启生效
firewall-cmd --reload

Ubuntu安装

sudo apt-get update
sudo apt-get install mysql-server
# 启动
sudo /etc/init.d/mysql start
# 状态
sudo /etc/init.d/mysql status
# 停止
sudo /etc/init.d/mysql stop
# 重启
sudo /etc/init.d/mysql restart

# 进入MySQL
sudo mysql
# 创建用户
create user test@'%' identified by 'test';
## 授权
grant all privileges on *.* to test@'%';
## 刷新权限
flush privileges;

修改远程访问

sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf
# 调整bind-address 然后重启