刘仁 Java后端开发

CentOS 7安装MySQL5.7绿色版图文教程

2019-06-06
LIUREN

CentOS 7安装MySQL5.7绿色版图文教程

这段时间在做OGG数据同步,要做MySQL到Oracle的实时同步。图软发现MySQL绿色安装方法忘记了。所以重新做一遍实验记录一下,作为后期的日子;

前面我做了一个CentOS7.4的MySQL安装,不过那时候使用的rpm文件安装的,今天想要使用绿色版压缩包安装;原来rpm安装的方法如下https://www.codepeople.cn/2018/12/31/CentOS7.4-MySQL8.0-install/

第一步 了解一下你的系统版本。

[root@localhost home]# cat /etc/redhat-release
CentOS Linux release 7.4.1708 (Core)

第二步 通过 rpm -qa | grep mariadb 命令查看 mariadb 的安装包

[root@localhost home]# rpm -qa | grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64

第三步 通过 rpm -e mariadb-libs-5.5.56-2.el7.x86_64 –nodeps 命令装卸 mariadb

[root@localhost home]# rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
[root@localhost home]# rpm -qa | grep mariadb
[root@localhost home]# 

#mariadb 是MySQL的衍生版本,为了防止Oracle对MySQL的闭源linux采用了MySQL的衍生版本

第四步 下载MySQL的Linux安装包

先安装wget下载工具

[root@localhost soft]# yum install -y wget

通过命令下载mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz安装文件

[root@localhost soft]# wget http://ftp.kaist.ac.kr/mysql/Downloads/MySQL-5.7/mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz

第五步 解压修改安装名称

[root@localhost mysql]# tar zxvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
[root@localhost local]# ls
bin  etc  games  include  lib  lib64  libexec  mysql-5.7.26-linux-glibc2.12-x86_64  sbin  share  src
[root@localhost mysql]# cd /usr/local/
[root@localhost local]# mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql
[root@localhost local]# ls
bin  etc  games  include  lib  lib64  libexec  mysql  sbin  share  src

第六步 创建目录

[root@localhost local]# mkdir -p /mysql/data
[root@localhost local]# mkdir -p /mysql/sock
[root@localhost local]# mkdir -p /mysql/log
[root@localhost local]# mkdir -p /mysql/pid

第七步 创建组和用户

# groupadd mysql
# useradd mysql -g mysql -d /usr/local/mysql -s /sbin/nologin

第八步 安装MySQL

[root@localhost local]# cd /usr/local/mysql
[root@localhost mysql]# ls
bin  COPYING  docs  include  lib  man  README  share  support-files

第九步 修改MySQL配置文件

[root@localhost etc]# cd /etc
[root@localhost etc]# touch my.cnf

注:第一次,请注释“bind-address”,需要root本地登录,初始化mysql用户

[mysqld]
user=mysql
# bind-address=192.168.0.223
port=3306
basedir=/usr/local/mysql
datadir=/mysql/data
socket=/mysql/sock/mysql.sock
pid-file=/mysql/pid/mysql.pid
log-error=/mysql/log/mysql-error.log

symbolic-links=0
default-storage-engine=INNODB
character_set_server=utf8
collation-server=utf8_general_ci
transaction_isolation=REPEATABLE-READ
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
skip_ssl
default-time-zone='+8:00'
innodb_buffer_pool_instances=1
max_connections=200

[mysql]
default-character-set=utf8
port=3306
socket=/mysql/sock/mysql.sock

第十步 启动服务文件

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

注:修改启动文件:

# vim /etc/init.d/mysqld
basedir=/usr/local/mysql
datadir=/mysql/data

第十一步 更改涉及拥有者

# chown -R mysql:mysql /mysql
# chown -R mysql:mysql /etc/my.cnf
# chown -R mysql:mysql /usr/local/mysql

第十二步 初始化 mysql 的数据库

[root@localhost mysql]# cd /usr/local/mysql/bin
[root@localhost bin]# ls
innochecksum    myisampack         mysqlcheck                  mysqld-debug   mysql_embedded    mysql_secure_installation  mysql_tzinfo_to_sql  resolveip
lz4_decompress  my_print_defaults  mysql_client_test_embedded  mysqld_multi   mysqlimport       mysqlshow                  mysql_upgrade        resolve_stack_dump
myisamchk       mysql              mysql_config                mysqld_safe    mysql_install_db  mysqlslap                  mysqlxtest           zlib_decompress
myisam_ftdump   mysqladmin         mysql_config_editor         mysqldump      mysql_plugin      mysql_ssl_rsa_setup        perror
myisamlog       mysqlbinlog        mysqld                      mysqldumpslow  mysqlpump         mysqltest_embedded         replace
[root@localhost bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/mysql/data

数据库密码查询:k-9dlymmrpUM

[root@localhost bin]# cat /mysql/log/mysql-error.log
2019-06-06T04:00:43.969137Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2019-06-06T04:00:43.969173Z 0 [Warning] 'NO_ZERO_DATE', 'NO_ZERO_IN_DATE' and 'ERROR_FOR_DIVISION_BY_ZERO' sql modes should be used with strict mode. They will be merged with strict mode in a future release.
2019-06-06T04:00:43.969176Z 0 [Warning] 'NO_AUTO_CREATE_USER' sql mode was not set.
2019-06-06T04:00:45.645471Z 0 [Warning] InnoDB: New log files created, LSN=45790
2019-06-06T04:00:45.963270Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2019-06-06T04:00:46.081377Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: a97b14cb-880f-11e9-9246-c85b7661fe5d.
2019-06-06T04:00:46.104439Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2019-06-06T04:00:46.105580Z 1 [Note] A temporary password is generated for root@localhost: k-9dlymmrpUM

第十三步 启动MySQL

[root@localhost bin]# service mysqld start
Starting MySQL. SUCCESS! 
[root@localhost bin]# 

第十四步 修改MySQL的密码

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on *.* to 'root'@'%' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

允许所有的计算机连接该数据库

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION
mysql> FLUSH PRIVILEGES;

第十五步 设置mysql服务开机自启动

[root@localhost /]# chkconfig --add mysqld
[root@localhost /]# chkconfig mysqld on
[root@localhost /]# chkconfig --list | grep mysqld

注:该输出结果只显示 SysV 服务,并不包含
原生 systemd 服务。SysV 配置数据
可能被原生 systemd 配置覆盖。 

      要列出 systemd 服务,请执行 'systemctl list-unit-files'。
      查看在具体 target 启用的服务请执行
      'systemctl list-dependencies [target]'。

mysqld         	0:关	1:关	2:开	3:开	4:开	5:开	6:关
[root@localhost /]#

第十六步 配置mysql环境变量

vim /etc/profile

在文件的末尾增加如下内容

export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH

立即生效环境变量

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

第十七步 查看MySQL的安装版本

[root@localhost /]# mysql --version
mysql  Ver 14.14 Distrib 5.7.26, for linux-glibc2.12 (x86_64) using  EditLine wrapper

第十八步 查看MySQL的进程服务和路径

[root@localhost /]# ps -ef |grep mysql
root      8580     1  0 12:04 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/mysql/data --pid-file=/mysql/pid/mysql.pid
mysql     8879  8580  0 12:04 pts/0    00:00:03 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/mysql/log/mysql-error.log --pid-file=/mysql/pid/mysql.pid --socket=/mysql/sock/mysql.sock --port=3306
root     10306  5731  0 13:08 pts/0    00:00:00 grep --color=auto mysql

第十九步 通过以下命令进行,开放端口重启防火墙

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
#查看所有的已经开放的端口
firewall-cmd --zone=public --list-ports

007

第二十步 通过navicat连接MySQL数据库

如果忘记了虚拟机的IP可以通过如下命令查看:

ip addr
ifconfig

都能看到对应的IP

007

007

007

说明:以上就是全部的虚拟机CentOS 7.4 安装MySQL 8.0的安装步骤

参考文章:https://blog.csdn.net/weixin_42266606/article/details/80879571

参考文章:https://www.cnblogs.com/phpandmysql/p/7912061.html


Similar Posts

Comments