mysql5.6升级为mysql5.7部署jboss/wildfly应用项目
一、部署mysql5.7二进制版
解压tar -xvf
mv mysql-5.7 /usr/local/mysql5.7 或者其他文件夹
cd /usr/local/mysql.57
useradd -s /sbin/nologin -M mysql
mkdir -p /usr/local/mysql5.7/etc
启动初始化数据
bin/mysqld --initialize --basedir=/usr/local/mysql5.7 --datadir=/usr/local/mysql5.7/data
修改配置文件
chown –R mysql:mysql /usr/local/mysql5.7
vim /usr/local/mysql5.7/etc/my.cnf
详见文件my.cnf
制作systemd启动MYSQL服务
vim /lib/systemd/system/mysqld.service ,详见文件
启动服务
systemctl start mysqld
systemctl enable mysqld
更改环境变量
vim /etc/profile
export PATH=$PATH:/usr/local/mysql5.7/bin
source /etc/profile
进入mysql,第一次登录mysql,没有root密码,解决方式:
在/usr/local/mysql5.7/etc/my.cnf 中添加 skip-grant-tables 参数。此参数的作用是登录Mysql 数据库不进行用户密码验证。
[mysqld]
skip-grant-tables
保存my.cnf 后,重启msyql
systemctl restart mysqld
然后登录 mysql -uroot
执行以下语句:
update mysql.user set authentication_string=password('密码') where user='root';
flush privileges;
exit;
systemctl restart mysqld
mysql -uroot -p
Enter password:在这里输入刚才设置的密码,如果不成功或者提示密码过期需要修改密码,重新登录mysql
use mysql;
update user set password_expired='N' where user='root';
flush privileges;
重新登录,成功。
在my.cnf文件中的skip-grant-tables注释掉,systemctl restart mysqld
二、导入mysql5.6数据
创建授权账户grant all on *.* to '***'@'%' identified by '***';
flush privileges;
create database *** default character set utf8;
在导入sql数据时,会出现有的函数及过程不能导入的情况,在my.cnf文件的mysqld段加入log_bin_trust_function_creators=1,重启mysql导入成功。成功后注释掉该行。
对于外键限制,先行取消限制,导入后在开启限制
set FOREIGN_KEY_CHECKS=0;
执行sql导入或者用navigat导入,成功后执行Set FOREIGN_KEY_CHECKS=1
三、jboss/wildfly应用项目部署
1、 部署jboss/wildfly
解压,tar xvf ; mv /usr/local/jboss/wildfly
设置路径 vim /etc/profile,加 export
WILDFLY_HOME=/usr/local/wildfly;export PATH=$PATH:$WILDFLY_HOME/bin
source /etc/profile
2、更改配置
修改/usr/local/wildfly/standalone/configuration/standalone.xml
<interface name="management">
<inet-address value="${jboss.bind.address.management:0.0.0.0}"/>
</interface>
<interface name="public">
<inet-address value="${jboss.bind.address:0.0.0.0}"/>
更改默认端口,由8080改为80,也可以改为其他
<socket-binding name="http" port="${jboss.http.port:80}"/>
启动服务:standalone.sh,
3、配置数据源
由console管理wildfly添加数据源,提示add-user.sh,添加用户admin
登陆 本机ip:9990
添加driver:
step 1:下载好mysql-connector-java-5.1.47.jar
step 2: 登陆 本机ip:9990 选择 Runtime/Manage Deployments/add mysql-connector,名称为mysql,runname为mysql,然后save,再enable
step 3: 选 Configuration/Connctor/Datasources , 增加jndi数据源
name: ***,JNDI Name: java:jboss/datasources/***, Driver 为我们刚才导入的jar包的驱动:mysql_com.mysql.jdbc.Driver_5_1,connection url: jdbc:mysql://ip/数据库***,其中的IP地址为部署的数据库服务器的ip,username: ***,password:***,save之后enable,同时测试是否连接成功test connection,成功即为创建成功。
4、部署应用项目
编辑standalone.xml文件,在<subsystem xmlns="urn:jboss:domain:deployment-scanner:2.0">端内增加
<deployment-scanner name="项目名" path="项目所在路径" scan-enabled="true" scan-interval="5000" auto-deploy-zipped="true" auto-deploy-exploded="false" deployment-timeout="60"/>
在“项目所在的路径“目录下mkdir 项目名.war,touch 项目名.dodeploy ,把项目所有文件放入项目名.war目录下。
5.重新启动Jboss/wildfly
standalone.sh
四、错误及故障处理
1、ERROR [stderr] (XNIO-1 task-4) Wed Jan 09 15:19:57 CST 2019 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
排除:在standalone.xml文件中修改
<connection-url>jdbc:mysql://ip地址/数据库名?useSSL=true</connection-url> 添加?useSSL=true
错误排除
2、启动jboss出现
Address "0.0.0.0" is a wildcard address, which will not match against any specific address. Do not use the 'inet-address' configuration elementto specify that an interface should use a wildcard address; use 'any-address', 'any-ipv4-address', or 'any-ipv6-address'
解决:在jboss/standalone/configuration/standlone.xml文件中改
<interface name="public">中inet-address为any-ipv4-address重启 jboss/bin/standlone.sh
3、登录应用项目,提示密码错误,无法登陆
经排查,为mysql5.6数据库升级为mysql5.7而出现的故障,需在my.cnf文件中加入sql_mode=,故障消除
4、应用项目查询特别慢问题
经排查为mysql5.6数据库升级为mysql5.7而出现的故障,需要关闭derived_merge,在mysql启动后执行
mysql -u*** -p*** -e "set GLOBAL optimizer_switch='derived_merge=off';"
重新进入应用项目,查询速度恢复正常。
5、配置jboss/wildfly数据源,因数据源超时问题的解决
Caused by: java.lang.RuntimeException: org.springframework.dao.RecoverableDataAccessException:
### Error querying database. Cause: com.mysql.cj.jdbc.exceptions.CommunicationsException: The last packet successfully received from the server was 154,231 milliseconds ago. The last packet sent successfully to the server was 154,231 milliseconds ago. is longer than the server configured value of 'wait_timeout'. You should consider either expiring and/or testing connection validity before use in your application, increasing the server configured values for client timeouts, or using the Connector/J connection property 'autoReconnect=true' to avoid this problem.
可以更改my.cnf文件中的
wait_timeout=2147483
interactive_timeout=2147483
将两个值改大,也不能改的太大。
重启mysql服务器,重启应用,问题解决。
mysql5.6升级为mysql5.7部署jboss/wildfly应用项目的更多相关文章
- mysql5.1升级到mysql5.6
这么大跨度的升级,本身不推荐.升级应该是循序渐进的,以防止不兼容.如果确实要这么做,你先要确保你的客户端管理工具要能兼容,比如phpmyadmin,此次升级依然存在一个问题,mysql server和 ...
- Windows 10 将MySQL5.5升级为MySQL5.7
最近想学习一下java.找到一个开源项目需要mysql5.7.11+ 升级 电脑上装的是MySQL 5.5,准备直接升级到最新版本的5.7,对于MySQL好像并没有直接升级到最新版本的功能,下载了Wi ...
- mysql5.x升级到mysql5.7后导入之前数据库date出错的快速解决方法【mysql低版本数据导入到高版本出错的解决方法】
mysql5.x升级至mysql5.7后导入之前数据库date出错,这是由于MySQL的sql_mode的影响,解决方法如下所示: [具体参考:mysql的sql_mode详解]修改mysql5.7的 ...
- MySQL5.1升级5.6后,执行grant出错:ERROR 2013 (HY000): Lost connection to MySQL server during query【转载】
转载: MySQL5.5升级5.6后,执行grant出错:ERROR 2013 (HY000): Lost connection to -mysql教程-数据库-壹聚教程网http://www.111 ...
- mysql5.6升级及mysql无密码登录
mysql5.6升级 mysql5.6的升级可以分为以下几个步骤: 安全关闭正在运行的MySQL实例 把/usr/local/mysql 的连接由MySQL5.6更改为MySQL5.7 启动MySQL ...
- MySQL5.6.26升级到MySQL5.7.9实战方案【转】
MySQL5.6.26升级到MySQL5.7.9实战方案 转自 MySQL5.6.26升级到MySQL5.7.9实战方案 - 其他网络技术 - 红黑联盟http://www.2cto.com/net/ ...
- 用Maven打包成EAR远程部署JBoss(二)——部署到远程JBoss
用Maven打包成EAR远程部署JBoss(一)讲了如何使用Maven打包,可是在文章的最后也留下了一个问题,那就是如何将包部署到远程的JBoss中呢?近期在对之前的学习进行总结,发现少了这样一篇重要 ...
- centos6.5环境通达OA数据库mysql5.0.67升级至mysql5.5.48方案
centos6.5环境通达OA数据库mysql5.0.67升级至mysql5.5.42方案 整体方案: 环境准备,在备用服务器安装mysql5.5数据库 1.停用生产环境的应用访问 直接修改web的访 ...
- JBoss/Wildfly 配置SQLserver服务器
JBoss/Wildfly 配置SQLserver服务器 http://blog.csdn.net/haitaolang/article/details/60467118 wildfly standa ...
随机推荐
- 使用 grep 的 -o 和 -E 选项进行正则的精确匹配
sed 命令可以很好的进行行匹配,但从某一行中精确匹配某些内容,则使用 grep 命令并辅以 -o 和 -E 选项可达到此目的.其中 -o 表示“only-matching”,即“仅匹配”之意.光用它 ...
- ASP.NET Core 返回文件、用户下载文件,从网站下载文件,动态下载文件
ASP.NET Core 中,可以在静态目录添加文件,直接访问就可以下载.但是这种方法可能不安全,也不够灵活. 我们可以在 Controller 控制器中 添加 一个 Action,通过此Action ...
- 沉淀再出发:关于IntelliJ IDEA使用的一些总结
沉淀再出发:关于IntelliJ IDEA使用的一些总结 一.前言 在使用IDEA的时候我们会发现,如果我们先写了一个类的名字,而没有导入这个类的出处,就会提示出错,但是不能自动加入,非常的苦恼,并且 ...
- Azure Internet 负载均衡器建立
摘自微软官方文档 Azure load balancer 是位于第 4 层 (TCP, UDP) 的负载均衡器. 该负载均衡器可以在云服务或负载均衡器集的虚拟机中运行状况良好的服务实例之间分配传入流量 ...
- Android App 注射&&Drozer Use
x01 准备工作 测试环境: 1) 手机root权限 2) Adb.exe 3) 手机usb连接开启debug模式(在设置>关于手机>连续点击多次版本号,即可开启开发者模式) 4) Win ...
- SOJ 1085 SCU 简单计算几何
BackGroud Year 2003不知你是否注意到,四川大学每年都会在各宿舍楼里放老鼠药,以解决学生宿舍的老鼠问题. 今年,学校的领导为了更好的展开灭鼠的行动,引进了一项新的技术:SCU(Supe ...
- node.js的npm命令常见错误及解决方案
使用npm命令进行模块安装的时候场出现各种错误,本文总结我所遇到的各种错误,并提供解决方案.(大部分内容为网上收集) 首先使用淘宝 NPM 镜像 大家都知道国内直接使用 npm 的官方镜像是非常慢的, ...
- 【vue】饿了么项目-页面骨架开发
1.页面骨架开发 1.1组件拆分 手机浏览器是把页面放在一个虚拟的“窗口”(viewport)中,通常这个虚拟的“窗口”(viewport)比屏幕宽,这样就不用把每个网页挤到很小的窗口中(这样会破坏没 ...
- python之使用__future__
Python的新版本会引入一些新的功能特性,但一般一部分的新功能可以在旧版本上测试,测试成功再移植到新的版本上,旧版本可以通过导入__future__模块的某些功能,测试新版本的新功能.(注意:fut ...
- ASP.NET如何批量保存动态生成的文本框?
对于OA系统,表单签核功能必不可少.而根据公司的情况,表单自然又五花八门,所以就要求能够让用户自己建立表单并设定表单的流程.填写内容等等.我之前写过一篇文章[地址:pivot的用法(SQL SERVE ...