环境一台机器:192.168.81.132
下载安装包链接:https://pan.baidu.com/s/14-_LlXPpMB10ray3iYPoQQ
提取码:idea
首先切换到/opt目录下查看是否安装mysql数据库,如果安装mysql数据库及卸载(–nodeps(强力删除模式))
[root@localhost ~]# cd /opt/
[root@localhost ~]# rpm -qa| grep mariadb
[root@localhost ~]# rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
安装mysql依赖包
[root@localhost ~]# yum -y install libaio
进入/opt目录下将mysql文件解压
[root@localhost ~]# cd /opt/
[root@localhost opt]# tar zxf mysql-8.0.21-el7-x86_64.tar.gz
为了方便操作以及配置文件的更改我们将文件名重命名为mysql
[root@localhost opt]# mv mysql-8.0.21-el7-x86_64 mysql
[root@localhost opt]# ll
总用量 572292
drwxr-xr-x. 9 7161 31415 129 6月 17 2020 mysql
-rw-r--r--. 1 root root 586026623 6月 10 16:55 mysql-8.0.21-el7-x86_64.tar.gz
我们将文件移动到/usr/local目录下
[root@localhost opt]# mv /opt/mysql/ /usr/local/
我们切换到usr/local/目录下查看mysql是否存在
[root@localhost opt]# cd /usr/local/
[root@localhost local]# ls
bin etc games include lib lib64 libexec mysql sbin share src
建数据库文件存放的文件夹。这个文件夹将来存放每个数据库的库文件
[root@localhost local]# cd mysql/
[root@localhost mysql]# mkdir mysqldb
[root@localhost mysql]# ls
bin docs include lib LICENSE man mysqldb README share support-files
mysql安装目录赋予权限
[root@localhost mysql]# chmod -R 777 /usr/local/mysql/
[root@localhost mysql]# ll
总用量 408
drwxrwxrwx. 2 7161 31415 4096 6月 17 2020 bin
drwxrwxrwx. 2 7161 31415 55 6月 17 2020 docs
drwxrwxrwx. 3 7161 31415 282 6月 17 2020 include
drwxrwxrwx. 6 7161 31415 201 6月 17 2020 lib
-rwxrwxrwx. 1 7161 31415 404759 6月 17 2020 LICENSE
drwxrwxrwx. 4 7161 31415 30 6月 17 2020 man
drwxrwxrwx. 2 root root 6 6月 10 17:04 mysqldb
-rwxrwxrwx. 1 7161 31415 687 6月 17 2020 README
drwxrwxrwx. 28 7161 31415 4096 6月 17 2020 share
drwxrwxrwx. 2 7161 31415 77 6月 17 2020 support-files
创建mysql组和用户
[root@localhost mysql]# groupadd mysql
[root@localhost mysql]# useradd -r -g mysql -s /bin/false mysql
#创建用户(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限)
将用户添加到组中
[root@localhost mysql]# chown -R mysql:mysql ./
[root@localhost mysql]# id mysql
uid=997(mysql) gid=1001(mysql) 组=1001(mysql)
修改mysql配置文件
[root@localhost mysql]# vim /etc/my.cnf
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/mysqldb
# 允许最大连接数
max_connections=10000
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8
进入mysql 安装目录下:
[root@localhost mysql]# cd /usr/local/mysql/bin/
安装mysql,并记住初始化随机密码
[root@localhost bin]# ./mysqld --initialize --console
2021-06-10T09:09:27.865086Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.21) initializing of server in progress as process 2498
2021-06-10T09:09:27.866918Z 0 [Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous.
2021-06-10T09:09:27.881524Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started.
2021-06-10T09:09:28.521919Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended.
2021-06-10T09:09:29.612237Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: lgd(:g/7Yrtx
#初始化随机密码:lgd(:g/7Yrtx
进入mysql.server服务目录下并启动服务
[root@localhost bin]# cd /usr/local/mysql/support-files/
[root@localhost support-files]# ./mysql.server start
Starting MySQL.Logging to '/usr/local/mysql/mysqldb/localhost.localdomain.err'.
ERROR! The server quit without updating PID file (/usr/local/mysql/mysqldb/localhost.localdomain.pid).
此时不要担心,重新给mysql安装目录赋予一下权限后,再次执行
[root@localhost support-files]# chmod -R 777 /usr/local/mysql/
[root@localhost support-files]# ./mysql.server start
Starting MySQL. SUCCESS!
将mysql添加到系统进程中
[root@localhost ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
此时我们就可以使用服务进程操作mysql了
设置mysql自启动
[root@localhost ~]# chmod +x /etc/init.d/mysqld
[root@localhost ~]# systemctl enable mysqld
mysqld.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig mysqld on
此时mysql自启动就已经设置好了
修改root用户登录密码
[root@localhost ~]# cd /usr/local/mysql/bin/
mysql> alter user root@'localhost' identified with mysql_native_password by '1234';
Query OK, 0 rows affected (0.01 sec)
设置允许远程登录
重启服务并查看mysql是否启动
[root@localhost bin]# systemctl restart mysqld
[root@localhost bin]# systemctl status mysql
● mysqld.service - LSB: start and stop MySQL
Loaded: loaded (/etc/rc.d/init.d/mysqld; bad; vendor preset: disabled)
Active: active (running) since 四 2021-06-10 17:19:58 CST; 3s ago
Docs: man:systemd-sysv-generator(8)
Process: 4081 ExecStop=/etc/rc.d/init.d/mysqld stop (code=exited, status=0/SUCCESS)
Process: 4108 ExecStart=/etc/rc.d/init.d/mysqld start (code=exited, status=0/SUCCESS)
CGroup: /system.slice/mysqld.service
├─4119 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/mysqldb --pid-file=/usr/local/mysql/mysqldb/localhost.localdomain...
└─4308 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/mysqldb --plugin-dir=/usr/local/mysql/lib/plugin --...
6月 10 17:19:57 localhost.localdomain systemd[1]: Starting LSB: start and stop MySQL...
6月 10 17:19:58 localhost.localdomain mysqld[4108]: Starting MySQL. SUCCESS!
6月 10 17:19:58 localhost.localdomain systemd[1]: Started LSB: start and stop MySQL.
查看防火墙开放端口
[root@localhost bin]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens33
sources:
services: ssh dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
在防火墙中将3306端口开放并查看端口
[root@localhost bin]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
success
[root@localhost bin]# firewall-cmd --reload
success
[root@localhost bin]# ss -tnl
State Recv-Q Send-Q Local Address:Port Peer Address:Port
LISTEN 0 128 *:22 *:*
LISTEN 0 100 127.0.0.1:25 *:*
LISTEN 0 70 :::33060 :::*
LISTEN 0 128 :::3306 :::*
LISTEN 0 128 :::22 :::*
LISTEN 0 100 ::1:25 :::*
mysql-8.0.21安装部署完毕!!!!!!!