CentOS7下二进制安装mysql 5.7.23

时间:2022-08-27 17:33:55

网上这方面的安装资料参差不齐,到处是坑,废了我好大的劲才装好,然后把自己整理一下,把安装过程记录了下来,同时也分享给有需要的朋友,话不多说,直接上菜

1、首先去Mysql官网下载Mysql5.7.23

下载地址

官方的安装文档

2、上传文件

利用xftp工具将 mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz 上传到服务器,然后使用命令检查是否有默认的数据库.

?
1
rpm -qa | grep mysql

如果有,使用一下命令卸载

?
1
rpm -e 已经存在的MySQL全名

3、添加用户组,用专门管理mysql,提高安全

在/usr/local 目录下创建mysql文件夹,并添加用户组和用户,并把mysql文件夹所属组和用户切换成刚添加的用户组和用户

?
1
2
3
4
5
[root@localhost local]# mkdir mysql
[root@localhost local]# groupadd mysql
[root@localhost local]# useradd -r -g mysql -s /bin/false mysql
[root@localhost local]# [root@localhost local]# chown -R mysql:mysql mysql
# chown -R "权限""名""组" 文件夹名称

CentOS7下二进制安装mysql 5.7.23

添加用户组步骤非必须可以跳过
然后将上传mysql压缩文件解压并移到/usr/local/mysql文件夹下 

?
1
2
tar -xvf mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz -C /usr/local
 mv mysql-5.7.23-linux-glibc2.12-x86_64/* /usr/local/mysql

配置mysql的服务,将support-files下的mysql.server 复制到 /etc/init.d/下并取个名字

?
1
[root@localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql

然后修改/etc/init.d/mysql的参数,

?
1
vi /etc/init.d/mysql

修改

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

接着配置mysql的配置文件,在其他版本的mysql 里面 support-files下有默认的配置文件,而5.7.23这个版本没有,需要自己准备,下面提供一份简单基本配置,在/etc/ 下新建my.cnf ,有些可能会提示已经存在,因为默认装的数据库配置文件也在,直接覆盖就行

?
1
touch my.cnf

my.cnf内容如下

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[client]
port = 3306
default-character-set=utf8
 
[mysqld]
# 一般配置选项
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character-set-server=utf8
default_storage_engine = InnoDB
 
 
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

然后切换到mysql的bin目录执行下面命令初始化数据库

?
1
[root@localhost bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

执行完毕后会自动生成默认的密码在执行记录中,注意复制出来

CentOS7下二进制安装mysql 5.7.23

通命令启动mysql 服务,下方会提示启动成功字样

?
1
service mysql start

4、登录

?
1
2
[root@localhost bin]# ./mysql -uroot -p
Enter password: 输入默认的临时密码

登录成功后,修改密码

?
1
mysql> set password=password('新密码');

为了Mysql 命令使用方便,配置一下mysql的环境变量

?
1
[root@localhost bin]# vi /etc/profile

CentOS7下二进制安装mysql 5.7.23

使环境变量生效

?
1
[root@localhost bin]# source /etc/profile

从此无需在切换到mysql的bin下登录mysql了

5、开启远程登录

如果防火墙是开启状态的话,那我们先需要打开端口,才能远程登录,使用下面命令开放指定端口,然后重启防火墙

?
1
2
[root@localhost local]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@localhost local]# firewall-cmd --reload

CentOS7下二进制安装mysql 5.7.23

设置mysql的远程登录

?
1
2
mysql> grant all privileges on *.* to root@'%' identified by '你的密码';
mysql> flush privileges;

6、设置开机自启

此步骤非必须,不影响使用,但是CentOS一般作为服务器使用,因此,MySQL服务器应该随机自启动
首先查看自启服务列表

?
1
[root@localhost local]# chkconfig --list

然后添加mysql服务并设置自启

?
1
2
[root@localhost local]# chkconfig --add mysql
[root@localhost local]# chkconfig mysql on

然后使用上述命令再次查看自启服务列表,会看到mysql的2-5都显示开(有些显示的是 on),说明mysql服务会随机器启动而自动启动.

CentOS7下二进制安装mysql 5.7.23

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/Nicolas12/article/details/81813682