MySQL解压缩方式安装(CentOS7.6)

212 阅读2分钟

部署环境

环境:MySQL 5.7.36 + CentOS 7.6

安装包:mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

以下步骤使用root用户操作:

1、创建mysql用户

groupadd mysql

useradd mysql -g mysql

2、解压安装包

tar -xvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /opt

cd /opt

mv  mysql-5.7.36-linux-glibc2.12-x86_64 mysql

至此,已将mysql解压缩至/opt/mysql下,我们准备将该目录作为安装目录

3、修改安装目录属组为mysql:mysql

chown -R mysql:mysql /opt/mysql

以下步骤使用mysql用户操作:

4、配置相关信息

为方便进行管理,将所有配置信息及数据目录都存放在/opt/mysql下

配置文件 /opt/mysql/etc/my.cnf

数据目录 /opt/mysql/data

vi /opt/mysql/etc/my.cnf 编辑配置文件,内容如下:

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/opt/mysql
datadir=/opt/mysql/data
socket=/opt/mysql/tmp/mysql.sock
log-error=/opt/mysql/log/mysql.err
pid-file=/opt/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

/opt/mysql下相关目录也提前创建好

mkdir /opt/mysql/data

mkdir /opt/mysql/tmp

mkdir /opt/mysql/log

5、初始化数据库

/opt/mysql/bin/mysqld --defaults-file=/opt/mysql/etc/my.cnf --basedir=/opt/mysql --datadir=/opt/mysql/data --user=mysql --initialize

查看/opt/mysql/log/mysql.err文件,最后一行提示初始密码

6、修改mysql.server脚本内容

/opt/mysql/support-file下的mysql.server为数据库启停脚本,复制该脚本到某目录下(假设为/home/mysql下),修改脚本内容中以下几个变量的值。

config=$2
basedir=$(awk -F'=' '/basedir/{gsub(/^\s+|\s+$/,"",$2);print $2}' $config)
datadir=$(awk -F'=' '/datadir/{gsub(/^\s+|\s+$/,"",$2);print $2}' $config)
conf=/opt/mysql/etc/my.cnf  (可以通过vi检索conf=来查到)

7、启动数据库

启动数据库时可以通过 ./mysql.server start /opt/mysql/my.cnf来启动对应的实例

提示成功则数据库启动成功。

8、登录数据库并修改密码

/opt/mysql/bin/mysql -uroot -p 初始密码(查看方法在步骤5)

登录成功后依次执行以下两sql

set password=password('111111');

flush privileges;

数据库root用户密码便修改为111111

9、更改root用户登录ip限制

use mysql;
select user, host from user;
+---------------+-----------+
| user          | host      |
+---------------+-----------+
| root          | localhost |
| mysql.session | localhost |
| mysql.sys     | localhost |
+---------------+-----------+

执行语句update user set host='%' where user='root';

授权 grant all privileges on . to root@'%' identified by '111111' with grant option;