CentOS7 环境下二进制安装Mysql5.7.23(都是64位)

网上这方面的安装资料参差不齐,到处是坑,废了我好大的劲才装好,然后把自己整理一下,把安装过程记录了下来,同时也分享给有需要的朋友,话不多说,直接上菜
1、 首先去Mysql官网下载Mysql5.7.23
  下载地址   https://dev.mysql.com/downloads/mysql/5.7.html#downloads
  官方的安装文档   https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
2、上传文件
   利用xftp工具将 mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz 上传到服务器,然后使用命令检查是否有默认的数据库,

rpm -qa | grep mysql

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

rpm -e 已经存在的MySQL全名

3、添加用户组,用专门管理mysql,提高安全
在/usr/local 目录下创建mysql文件夹,并添加用户组和用户,并把mysql文件夹所属组和用户切换成刚添加的用户组和用户

 [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 环境下二进制安装Mysql5.7.23(都是64位)_第1张图片
添加用户组步骤非必须可以跳过
然后将上传mysql压缩文件解压并移到/usr/local/mysql文件夹下

 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/下并取个名字

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

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

vi /etc/init.d/mysql

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

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

touch my.cnf

my.cnf内容如下

# *** 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目录执行下面命令初始化数据库

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

执行完毕后会自动生成默认的密码在执行记录中,注意复制出来
这里写图片描述

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

 service mysql start

4、登录

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

登录成功后,修改密码

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

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

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

这里写图片描述

使环境变量生效

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

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

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

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

这里写图片描述
设置mysql的远程登录

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

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

[root@localhost local]# chkconfig --list

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

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

然后使用上述命令再次查看自启服务列表,会看到mysql的2-5都显示开(有些显示的是 on),说明mysql服务会随机器启动而自动启动,
CentOS7 环境下二进制安装Mysql5.7.23(都是64位)_第2张图片

你可能感兴趣的:(mysql)