CentOS7 环境下安装MySQL 5.7
系统下载:
CentOS-7-x86_64-DVD-1804.iso http://mirrors.aliyun.com/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1804.iso
软件包下载:
1.jdk-8u181-linux-x64.tar.gz
http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz?AuthParam=1534399561_ec65a552abdfc0b8844fdf8e5a84655e
2.apache-tomcat-8.5.32.tar.gz
http://219.239.26.3/files/411400000C175A06/mirror.bit.edu.cn/apache/tomcat/tomcat-8/v8.5.32/bin/apache-tomcat-8.5.32.tar.gz
3.mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.23-linux-glibc2.12-x86_64.tar.gz
远程客户端带有文件传输:sshsecureshellclient-3.2.9
https://it.wm.edu/software/public/ssh/sshsecureshellclient-3.2.9.exe
远程客户端不带文件传输:putty-64bit-0.70
https://www.ssh.com/a/putty-64bit-0.70-installer.msi
安装开始
1.远程工具传送软件到Linux目录
- 这里可能出现Linux无法联网,参照下列步骤修改即可
[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost ~]# service network restart
[root@localhost ~]# ip addr
- Secure File Transfer Client客户端 远程连接
2.解压软件包,配置环境变量
依次解压软件包
配置环境变量
[root@localhost ~]# vim /etc/profile
o
在末尾添加{}内的内容
{
export JAVA_HOME=/usr/local/jdk1.8.0_181
export TOMCAT_HOME=/usr/local/apache-tomcat-8.5.32
export MYSQL_HOME=/usr/local/mysql
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
export PATH=$JAVA_HOME/bin:$PATH:$TOMCAT_HOME/bin:$MYSQL_HOME/bin
}
esc
:wq
[root@localhost ~]# source /etc/profile
* 到此,jdk和tomcat已经安装完成 进行测试 *
[root@localhost ~]# java -version
java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)
[root@localhost ~]# startup.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-8.5.32
Using CATALINA_HOME: /usr/local/apache-tomcat-8.5.32
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.32/temp
Using JRE_HOME: /usr/local/jdk1.8.0_181
Using CLASSPATH: /usr/local/apache-tomcat-8.5.32/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.32/bin/tomcat-juli.jar
Tomcat started.
[root@localhost ~]# shutdown.sh
Using CATALINA_BASE: /usr/local/apache-tomcat-8.5.32
Using CATALINA_HOME: /usr/local/apache-tomcat-8.5.32
Using CATALINA_TMPDIR: /usr/local/apache-tomcat-8.5.32/temp
Using JRE_HOME: /usr/local/jdk1.8.0_181
Using CLASSPATH: /usr/local/apache-tomcat-8.5.32/bin/bootstrap.jar:/usr/local/apache-tomcat-8.5.32/bin/tomcat-juli.jar
[root@localhost ~]#
3.MySQL安装过程
- 添加系统mysql组和mysql用户
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql
- 切换到mysql文件夹并给mysql用户授权
[root@localhost ~]# cd /usr/local/mysql
[root@localhost mysql]# mkdir data
[root@localhost mysql]# chown -R mysql:mysql ./
- 执行安装命令,记录随机密码
[root@localhost mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
2018-08-16T08:49:33.530357Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecate --explicit_defaults_for_timestamp server option (see documentation for more details).
2018-08-16T08:49:33.769614Z 0 [Warning] InnoDB: New log files created, LSN=45790
2018-08-16T08:49:33.820618Z 0 [Warning] InnoDB: Creating foreign key constraint system ta
2018-08-16T08:49:33.885630Z 0 [Warning] No existing UUID has been found, so we assume tha first time that this server has been started. Generating a new UUID: 4c35ae72-a131-11e8-7067.
2018-08-16T08:49:33.886725Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.' cannot be opened.
2018-08-16T08:49:33.888207Z 1 [Note] A temporary password is generated for root@localhost 这里是随机密码*********
- 执行以下命令创建RSA private key
[root@localhost mysql]# bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
Generating a 2048 bit RSA private key
.......................................+++
..................................................................+++
writing new private key to 'ca-key.pem'
-----
Generating a 2048 bit RSA private key
.................+++
.......+++
writing new private key to 'server-key.pem'
-----
Generating a 2048 bit RSA private key
..........+++
.............+++
writing new private key to 'client-key.pem'
-----
- 配置my.cnf和开机启动mysql服务
[root@localhost mysql]# vi /etc/my.cnf
a
进入编辑模式后删除所有
复制粘贴
{
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
# (sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 这个简单来说就是sql语句是否严格)
lower_case_table_names = 1
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid
}
esc
:wq
复制mysql/support-files/mysql.server 到init.d目录下
[root@localhost mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
[root@localhost mysql]# vi /etc/init.d/mysql
//在46行修改
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
//将mysql加到系统服务中并设置开机启动
[root@localhost mysql]# chkconfig --add mysql
[root@localhost mysql]# chkconfig mysql on
- 启动mysql服务,登陆mysql修改密码,远程登陆授权
[root@localhost mysql]# service mysql start
Starting MySQL.. SUCCESS!
[root@localhost mysql]# mysql -uroot -p
Entering password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.23
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> set password = password('新密码');
mysql> grant all privileges on *.* to 'root' @'%' identified by '远程登陆密码';
mysql> flush privileges;
mysql> quit
Bye
[root@localhost mysql]#
- 开启远程端口:3306,用SQLyog管理数据库
[root@localhost mysql]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
//顺便开启tomcat的远程端口8080
[root@localhost mysql]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
//重载防火墙
[root@localhost mysql]# firewall-cmd --reload