MySQL安装与配置(Linux TAR版本5.7.21)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_31226223/article/details/79825336

Linux版本的MySQL有很多安装方式

这里介绍免安装版本,tar包版本的安装和配置

下载

MySQL for Linux下载地址:https://dev.mysql.com/downloads/mysql/

这里写图片描述

注意:“Select Operating System:”选项我们选择“Linux - Generic”

圈出来的三个部分,自上而下分别是精简包(只包含MySQL)、测试套件、完整包(包含MySQL和测试套件)

这里我们下载精简包就可以了(自行对应32bit/64bit)

解压&依赖

首先留意一个点,glibc版本和libaio

我们下载的时候能够看到文件名有“glibc2.12”字样

我们打开命令行

ldd --version

我们能够看到glibc版本号,不低于2.12即可

MySQL依赖于libaio 库

在基于Yum的系统上:

yum install libaio

在基于APT的系统上:

apt install libaio1

我们准备解压(习惯上我们把文件都放在/usr/local路径下)

这里写图片描述

解压并且重命名文件夹为“mysql”

tar -xzvf mysql-5.7.21-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.21-linux-glibc2.12-x86_64/ mysql

此时我们可以用ls命令看到有一个mysql文件夹已经被解压完毕

安装

进入mysql目录下

# 创建一个mysql用户和组
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
# 初始化数据库
bin/mysqld --initialize-insecure --user=mysql
# 启动MySQL服务器(安全模式)
bin/mysqld_safe --user=mysql &

此时MySQL已经在后台运行

初始化

进入mysql/bin目录下

# 进行初始化操作(酌情处理 第一个密码检查插件不推荐安装)
./mysql_secure_installation

初始化完成进入mysql/support-files路径下

# 关闭MySQL
./mysql.server stop
# 启动MySQL(非安全模式)
./mysql.server start

进入mysql/bin目录下

./mysql -u root -p

输入root密码即可登陆mysql

use mysql;
select User,Host from user where User = 'root';

我们可以看到Host字段的值是localhost,这样我们无法从外部连接数据库

# 更新Host字段为%
update user set Host = '%' where User = 'root';
flush privileges;

这时我们就可以使用别的机器连接这台机器上面的MySQL了

这里写图片描述

连接成功

设置自动启动方法一

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
update-rc.d mysql defaults

设置自动启动方法二(systemd)

如果觉得上面的方法一不够好用,可以试一试方法二

我们进入/etc/systemd/system路径下创建名为“mysql.service”的文件

cd /etc/systemd/system/
vi mysql.service # 不习惯用vi的话可以用gedit

然后填写以下配置

[Unit]
Description=MySQL 5.7.21

[Service]
Type=forking
User=root
# 下面这三个对应的就是mysql.server的启动/重启/关闭命令(路径请自行对应)
ExecStart=/usr/local/mysql/support-files/mysql.server start
ExecReload=/usr/local/mysql/support-files/mysql.server restart
ExecStop=/usr/local/mysql/support-files/mysql.server stop

[Install]
WantedBy=multi-user.target

填写完成后就可以使用systemctl来操作mysql的服务了

systemctl start mysql # 启动MySQL
systemctl restart mysql # 重启MySQL
systemctl stop mysql # 关闭MySQL
systemctl enable mysql # 允许MySQL开机启动

手动执行systemctl enable mysql后即可完成对mysql的自启设置

部分系统在刚刚添加完配置文件后使用systemctl,会提示找不到mysql.service

重启即可解决(或者使用命令“systemctl daemon-reload”重新加载一下即可)

猜你喜欢

转载自blog.csdn.net/qq_31226223/article/details/79825336