一、Mysql 5.7版本安装压缩包

mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

建议使用root用户操作

二、检查是否安装了mariadb:

rpm -qa | grep mariadb

示例:

[java@host-100 java]$ rpm -qa | grep mariadb

mariadb-libs-5.5.56-2.el7.x86_64

如果存在则删除mariadb,没则跳过。

下面为存在要删除:

yum -y remove mariadb-libs-5.5.56-2.el7.x86_64

三、解压Mysql

(预先上传mysql安装包:mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz,放在/java目录)

cd /java

tar -zxvf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

四、解压后,修改文件夹的名称,简单易记

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

五、创建Mysql软链接

在/usr/local/目录下创建到/java/mysql5.7的软链接

(为什么创建软链接:因为/etc/rc.d/init.d/mysqld配置的路径是/usr/local/mysql)

cd /usr/local

ln -s /java/mysql5.7 mysql

六、添加mysql用户,修改mysql目录权限

#该用户不能登录

useradd -s /bin/false -M mysql

cd /java

chown -R mysql:mysql mysql5.7

七、创建Mysql配置相关的文件

(根据自己的需要修改相应的文件路径)

#存放mysql数据的文件夹

mkdir -p /usr/local/mysql/data

chown -R mysql:mysql /usr/local/mysql/data

chmod -R 777 /usr/local/mysql/data

touch /usr/local/mysql/mysql-error.log

touch /usr/local/mysql/mysqld.pid

touch /usr/local/mysql/mysql.sock

chown -R mysql:mysql /usr/local/mysql/mysql-error.log

chown -R mysql:mysql /usr/local/mysql/mysqld.pid

chown -R mysql:mysql /usr/local/mysql/mysql.sock

chmod 755 /usr/local/mysql/mysql-error.log

chmod 755 /usr/local/mysql/mysqld.pid

chmod 755 /usr/local/mysql/mysql.sock

八、创建Mysql配置文件(/etc/my.cnf)

vi /etc/my.cnf

/etc/my.cnf 文件内容:

[client]

default-character-set =utf8mb4

socket=/usr/local/mysql/mysql.sock

[mysqld]

# MySQL服务端默认监听的TCP/IP端口

port = 3306

# 设置默认存储引擎为InnoDB

default-storage-engine=InnoDB

# MySQL服务端字符集

character-set-server=utf8mb4

# MySQL服务端字符集

collation_server = utf8mb4_general_ci

# 库名、表名是否区分大小写。默认为0,设置1,不区分大小写,创建的表、数据库都以小写形式存放磁盘。

lower_case_table_names=1

# MySQL软件安装路径

basedir=/usr/local/mysql

# MySQL数据文件存放路径

datadir=/usr/local/mysql/data

# 用于本地连接的Unix套接字文件存放路径

socket=/usr/local/mysql/mysql.sock

[mysql]

default-character-set=utf8mb4

socket=/usr/local/mysql/mysql.sock

[mysqld_safe]

log-error=/usr/local/mysql/mysql-error.log

pid-file=/usr/local/mysql/mysqld.pid

#保存文件

:wq

九、修改/etc/my.cnf 的拥有者

chown -R mysql:mysql /etc/my.cnf

十、安装和初始化Mysql数据库

1、进入Mysql bin目录:

cd /usr/local/mysql/bin/

2、初始化数据库:

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

此处注意,在初始化完成后,会出现mysql root用户的默认临时密码(temporary password):

临时密码:

2021-12-30T02:56:21.246302Z 1 [Note] A temporary password is generated for root@localhost: 5nb%Qqw9h=BF

5nb%Qqw9h=BF就是临时密码

十一、mysql 设置启动服务和开机自动启动

Mysql设置启动服务,将mysql的启动程序mysql.server拷贝到/etc/init.d/目录下

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

设置Mysql开机启动:

/sbin/chkconfig mysqld on

查看自动启动服务:

chkconfig --list

示例:2、3、4、5要显示 “开”

[root@host-101 etc]# chkconfig --list

注:该输出结果只显示 SysV 服务,并不包含

原生 systemd 服务。SysV 配置数据

可能被原生 systemd 配置覆盖。

要列出 systemd 服务,请执行 'systemctl list-unit-files'。

查看在具体 target 启用的服务请执行

'systemctl list-dependencies [target]'。

mysqld 0:关 1:关 2:开 3:开 4:开 5:开 6:关

十二、安装完,启动mysql服务

service mysqld start

重启mysql:(此步没必要,可省略)

service mysqld restart

十三、Mysql 环境变量配置

编辑/etc/profile,方便在任何地方简短用mysql命令

vi /etc/profile

在文件的最后增加mysql环境变量

MYSQL_HOME=/usr/local/mysql

PATH=$PATH:$MYSQL_HOME/bin

export MYSQL_HOME PATH

让环境变量配置生效

source /etc/profile

十四、开放Mysql端口

开放端口(如:3306)

sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent

移除端口:

sudo firewall-cmd --zone=public --remove-port=3306/tcp --permanent

或者

sudo firewall-cmd --permanent --remove-port=3306/tcp

让端口生效:

sudo firewall-cmd --reload

查看防火墙所有开放的端口

sudo firewall-cmd --zone=public --list-ports

十五、连接mysql

mysql -uroot -p

提示输入密码时,复制刚才生成的临时密码粘贴,然后回车。

十六、修改mysql root用户密码

要选择一个数据库:

use mysql;

修改密码:

set password=password('root');

刷新权限:

flush privileges;

十七、Mysql配置Root用户远程访问

GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

flush privileges;

十八、退出mysql

quit;

十九、Mysql修改默认端口

修改[mysqld]下的port(非[client]的port),如修改成2345,则是:

[mysqld]

# MySQL服务端默认监听的TCP/IP端口

port = 2345

开放新端口:

firewall-cmd --zone=public --add-port=2345/tcp --permanent

如果之前有开放此端口,需要移除默认的3306端口:

firewall-cmd --zone=public --remove-port=3306/tcp --permanent

让端口生效:

firewall-cmd --reload

查看防火墙所有开放的端口

firewall-cmd --zone=public --list-ports

重启mysql:

service mysqld restart

二十、重启服务器

reboot -f

二十一、查看Mysql是否开机自动启动

ps -ef | grep mysql

文章作者: 关二哥
版权声明: 本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 微码智云网
运维拓展
喜欢就支持一下吧