CentOS安装MySql及Web应用部署
- 一.安装MySql
- 1.3离线安装Mysql
- 1.4在线安装Mysql
- 二.云服务器在线安装mysql(一样如上)
- 安装mysql服务
- 修改root本地登录密码(查看生成的随机密码)默认密码是保存在/var/log/mysqld.log文件中
- 使用随机密码登录mysql
- 重置密码
- 用户访问权限问题
- 部署Web应用到云服务器
一.安装MySql
1.1卸载mariadb,否则安装MySql会出现冲突
列出所有被安装的mariadb rpm包:
#rpm -qa | grep mariadb
执行下列命令,逐个将所有列出的mariadb rpm包给卸载掉。
#rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
1.2创建mysql用户组,并添加lky用户
#groupadd mysql
#useradd -g mysql lky
1.3离线安装Mysql
准备mysql离线安装包:
1)解压安装包
#tar -xvf mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar
2)安装mysql-community-common-5.7.23-1.el7.x86_64.rpm
#rpm -ivh mysql-community-common-5.7.23-1.el7.x86_64.rpm
3)安装mysql-community-libs-5.7.23-1.el7.x86_64.rpm
#rpm -ivh mysql-community-libs-5.7.23-1.el7.x86_64.rpm
4)安装mysql-community-client-5.7.20-1.el7.x86_64.rpm
#rpm -ivh mysql-community-client-5.7.23-1.el7.x86_64.rpm
5)检测是否安装libaio
#rpm -qa|grep libaio
注:若不存在则需下载安装!!!有网络情况下直接执行如下操作:
#yum install libaio
6)安装mysql-community-server-5.7.23-1.el7.x86_64.rpm
#rpm -ivh mysql-community-server-5.7.23-1.el7.x86_64.rpm
7)初始化数据库并启动数据库失败
#mysqld --initialize
#systemctl start mysqld
问题原因:mysql的默认安装目录/var/lib/mysql没有权限导致启动失败,必须先赋权后才能启动成功!
8)授权(重要)
#cd /var/lib/
#chmod -R 777 mysql
9)更改mysql数据库目录的所属用户及其所属组
#chown mysql:mysql /var/lib/mysql -R
10)启动Mysql
#systemctl start mysqld
11)修改root本地登录密码
#grep ‘password’ /var/log/mysqld.log
12)使用随机密码登录MySQL
#mysql -u root -p
13)进入后重置root密码
#SET password=PASSWORD(‘1234’);
14)授权外网登录权限
#grant all privileges on . to 用户名@’%’ identified by ‘密码’;
11)刷新修改配置
#flush privileges
1.4在线安装Mysql
1)先下载MySQL源安装包:
#wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
2)再安装下载的MySQL源安装包:
#yum localinstall mysql57-community-release-el7-8.noarch.rpm
Is this ok [y/d/b]:y
进提已安装。还可以检则是否安装成功:
yum repolist enabled | grep "mysql.*-community.*"
3)安装MySQL服务
#yum install mysql-community-server
4)启动MySQL服务
#systemctl start mysqld
5)查看MySQL的启动状态
#service mysqld restart
或
#systemctl status mysqld
6)开机启动
#systemctl enable mysqld
#systemctl daemon-reload
或
#chkconfig --level 35 mysqld on
7)修改root本地登录密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:
#grep 'password' /var/log/mysqld.log
8)使用随机密码登录MySQL
mysql -u root -p
9)进入后重置root密码
Mysql >set password=password(‘新密码’);
注意设置简单密码会报错
这是因为密码的规则,设置简单规则
需开启低等级
Mysql > set global validate_password_policy=0;
Mysql > set password=password(‘新密码’);
10)授权外网登录权限(username为用户名,password为登录密码):
Mysql > grant all privileges on . to '用户名'@'%' identified by '登录密码';
会报出错误1064 (42000):SQL语法错误;检查对应于MySQL服务器版本的手册,看是否有正确的语法在第1行“hjj19991102”的“to hjj@ ’ %”附近使用
改为一下代码就OK啦:
Mysql >GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%' IDENTIFIED BY '登陆密码' WITH GRANT OPTION;
11)刷新修改配置
Mysql> flush privileges
开放端口
firewall-cmd --znotallow=public --add-port=3306/tcp --permanent
刷新防火墙配置
firewall-cmd --reload
查看所有端口号
firewall-cmd --list-port
停止防火墙
systemctl stop firewalld.service
禁止防火墙
systemctl disable firewalld.service
连接成功:
把数据库数据导入到mysql中:
进入安装好的mysql中:
创建新的数据库:
导入sql脚本:
导入成功后查询一下:
二.云服务器在线安装mysql(一样如上)
1.安装mysql
附上参考文章安装mysql以及错误解决
查看服务器上是否已经安装Mysql
命令:rpm -qa|grep mysql
:注意卸载maiiadb数据库(centos7自带的mysql的另一个版本)
rpm -qa|grep mariadb
如果有则卸载 命令: rpm -e --nodeps 文件名
1
下载mysql源安装包
shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
安装mysql源
shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm
检查mysql源是否安装成功
yum repolist enabled | grep “mysql.-community.”
成功!
cd /etc/yum.repos.d(目录下多了mysql的文件)
安装mysql服务
yum install mysql-community-server(安装mysql)
中途Y/D/N Y
1
service mysqld start(启动服务)
systemctl|grep mysql(检测mysql是否正在启动)
开机自启动
systemctl enable mysqld
1
或者
systemctl daemon-reload
1
修改root本地登录密码(查看生成的随机密码)默认密码是保存在/var/log/mysqld.log文件中
vi /var/log/mysqld.log/
或者
grep ‘password’ /var/log/mysqld.log
使用随机密码登录mysql
mysql -u root -p
注:输入随机密码
1
重置密码
set password=password(‘新密码’);
1
注意设置简单密码会报错
这是因为密码的规则,设置简单规则
需开启低等级
set global validate_password_policy=0
set password=password(‘新密码’);
接下来又是防火墙问题了
用户访问权限问题
grant all privileges on . to 用户名@’%’ identified by ‘密码’;
flush privileges;
多处需要注意、防火墙开放端口
开放端口
firewall-cmd --zone=public --add-port=8089/tcp --permanent
跟新防火墙规则
firewall-cmd --reload
防火墙列表
firewall-cmd --zone=public --list-ports
防火墙状态
systemctl status firewalld
启动防火墙
systemctl start firewalld
关闭防火墙
systemctl stop firewalld.service
systemctl disable firewalld.service
mysql端口未3306所以要释放3306端口的防火墙
连接成功
部署Web应用到云服务器
原文链接:
1)将发布的web应用通过SecureFX上传到tomcat/webapps/ROOT/目录下
注:请先打包成.zip包再上传。
2)解压.zip包到当前目录
unzip ROOT.zip
3)将8080端口添加到防火墙中或关闭防火墙
firewall-cmd --znotallow=public --add-port=8080/tcp --permanent
添加端口
刷新防火墙配置
firewall-cmd --reload