作者:Viola大人 | 来源:互联网 | 2023-08-19 13:05
目录mysql服务安装mysql服务安装yumremovemariadb卸载mariadbrpm-qa|grepmysql|xargsrpm-e--nodeps强制删除mysql数
目录
mysql服务安装
yum remove mariadb //卸载mariadb
rpm -qa | grep mysql | xargs rpm -e --nodeps //强制删除mysql数据库
MySQL服务安装教程
一、卸载MySQL
1、查看版本
mysql --version
![](https://img2.php1.cn/3cdc5/3c66/78c/fda9adcbe0ff2c9c.png)
2、查看安装的包
rpm -qa | grep mysql
![](https://img2.php1.cn/3cdc5/3c66/78c/ddf1311325cb6968.png)
3、卸载已安装MySQL
rpm -qa | grep mysql | xargs rpm -e --nodeps
# 删除MySQL配置文件及其目录
rm -rf /etc/my.cnf /etc/my.cnf.d
二、离线安装指定版本的MySQL
1、安装必要的包
yum -y install libncurses* wget vim
2、官网下载tar包
官网地址:https://downloads.mysql.com/archives/community/
(Looking for the latest GA version?)
Select Version: 5.7.29
Select Operating System: Source Code
Select OS Version: Generic Linux(Architecture Independent)
或者使用以下命令下载
cd /usr/local/src
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.29-el7-x86_64.tar.gz
将离线下载的tar上传至/usr/local/src目录下
3、创建安装账户
mkdir /usr/local/mysql
useradd -s /bin/false -d /usr/local/mysql mysql
4、安装过程
tar -xvzf mysql-5.7.29-el7-x86_64.tar.gz -C /usr/local/mysql/
cd /usr/local/mysql/mysql-5.7.29-el7-x86_64/
mv * ../
cd ..
rmdir mysql-5.7.29-el7-x86_64/
mkdir data
chown -R mysql.mysql ../mysql
cd bin
./mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
安装完成后在最后会显示root密码
![](https://img2.php1.cn/3cdc5/3c66/78c/78379081a8190523.png)
如果报如下错误
![](https://img2.php1.cn/3cdc5/3c66/78c/96cc6a6c9a22637a.png)
执行: yum install -y libaio
![](https://img2.php1.cn/3cdc5/3c66/78c/12cc8cd6f7fd81dd.png)
执行:
yum -y install numactl
拷贝可执行配置文件
cd /usr/local/mysql
cp support-files/mysql.server /etc/init.d/mysqld
5、配置过程
vim /etc/my.cnf
MySQL配置文件/etc/my.cnf中内容如下:
[mysqld]
port = 3306
basedir = /usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
pid-file=/usr/local/mysql/data/mysql.pid
log-error=/usr/local/mysql/data/error.log
character_set_server=utf8
user=mysql
max_cOnnections=1500
symbolic-links=0
# 东八区时区,北京时区
default-time-zOne= '+8:00'
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
# 导入包允许的大小设置
max_allowed_packet=1024M
# 忽略表名大小写;1表示忽略大小写,0表示解析大小写
lower_case_table_names=1
!includedir /etc/my.cnf.d
6、启动服务并登陆
# 启动命令
service mysqld start 或者 /etc/init.d/mysqld start
# 停止命令
service mysqld stop 或者 /etc/init.d/mysqld stop
# 重启命令
service mysqld restart 或者 /etc/init.d/mysqld restart
![](https://img2.php1.cn/3cdc5/3c66/78c/335f2da4a73da18c.png)
# 添加快捷方式
ln -s /usr/local/mysql/bin/mysql /usr/bin
# 登陆命令 密码为安装时显示的密码
mysql -u root -p'zisTBE)I8*/0'
7、修改密码并允许远程连接
mysql> set password=password('123456');
mysql> use mysql;
mysql> update user set host='%' where user='root';
mysql> flush privileges;
8、添加环境变量(可选)
vim /etc/profile
# mysql
PATH=/usr/local/mysql/bin:$PATH
![](https://img2.php1.cn/3cdc5/3c66/78c/d167cea78ef3b698.png)
# 保存退出后,使用source /etc/profile使其生效。
source /etc/profile
三、MySQL自启
# 查看MySQL是否自启
systemctl is-enabled mysqld
如下图,显示disabled,MySQL默认非自启
![](https://img2.php1.cn/3cdc5/3c66/78c/23cdffb1e586974e.png)
# 开启自启
systemctl enable mysqld
![](https://img2.php1.cn/3cdc5/3c66/78c/65cf1c5eb872e0f0.png)
四、防火墙放行3306端口
如果你的防火墙已经关闭,可忽略此操作。
# 永久开放3306端口
firewall-cmd --permanent --zOne=public --add-port=3306/tcp
# 重启防火墙
systemctl restart firewalld
# 检测设定是否生效
iptables -nL | grep 3306
ln -s /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib64/libmysqlclient.so.20