windows service配置amp环境

  如果我们服务器使用的是windows环境,就不用先linux一样,需要手动配置,我们可以像我们正常电脑一样,配置集成环境,就像我平时使用phpStudy集成环境,那么我登录到服务器端,然后在自带IE浏览器中访问百度,搜索phpStudy,然后下载安装即可,安装完记得随即开启集成环境!!真的比linux环境配置要简单的多。。。。

  当然集成环境搭建后,我们还要远程访问,这时候就出现了问题:无法访问,百度一下,云因是防火墙阻止了通过80端口访问所以我们要在windows service上设置允许80端口访问:可以参考网上的设置过程:https://jingyan.baidu.com/article/e75057f2c463e8ebc81a8960.html

 然后继续访问,还是失败,经过查阅网上各种说法:什么修改各种配置文件,我都试过了不行,后来想起来我之前在centos上安装amp环境(想要在centos下安装amp环境可以参考我的博客:http://blog.youkuaiyun.com/sunyinggang/article/details/78761610)时出现的问题:80端口没有打开!!

  当然我是指服务器的安全组设置,所以要去设置安全组。设置打开80端口,优先级设置为1(如果不知道入口在哪里,可以访问我的另一篇博客:http://blog.youkuaiyun.com/sunyinggang/article/details/79090727)


设置成功,我们再次根据ip地址远程访问,即可成功。

<think>嗯,我需要仔细分析用户的问题。用户提到在WindowsServer2012上安装Jira,连接MySQL8时遇到"protocol_version"错误。首先要理解这个错误的本质。用户使用的环境WindowsServer2012和MySQL8,而Jira可能使用了旧版的MySQL驱动。这个错误很可能是由于连接协议版本不匹配导致的。MySQL8默认使用新的身份验证插件caching_sha2_password,但老版本的JDBC驱动可能无法支持这种协议。需要查阅相关资料确认解决方法。根据引用[1]中的描述,解决类似问题的方法包括修改数据库用户认证方式,这也是解决protocol_version错误的常用方案。具体操作应该是调整MySQL的认证插件为mysql_native_password。因为Jira使用的驱动版本(可能低于8.0.16)可能不兼容新的SHA256插件。接下来要考虑具体实施步骤。用户需要登录MySQL数据库,然后对Jira使用的用户执行ALTERUSER命令修改认证插件。之后要确保FLUSHPRIVILEGES使变更生效。另外需要检查MySQL配置文件my.ini或my.cnf,确保没有强制使用caching_sha2_password的设置。还要注意JDBC连接字符串的配置细节,加入allowPublicKeyRetrieval和useSSL参数是必要的,这可能涉及安全风险但暂时解决问题。比如在连接字符串添加:jdbc:mysql://your-host/jira_db?useSSL=false&amp;allowPublicKeyRetrieval=true用户可能需要升级Jira的MySQL驱动,建议直接升级到MySQLConnector/J8.0.x版本,将下载的JAR文件放置在Jira安装目录的lib子文件夹中,并移除旧版本驱动。最后还要提醒用户操作注意事项:验证MySQL版本、Jira支持情况、配置变更后重启服务等。需要特别强调修改认证方式的安全性权衡,以及测试所有配置变更后重启服务的必要性。</think> 以下是针对Windows Server 2012下Jira连接MySQL 8出现`protocol_version`错误的完整解决方案: ### 错误原因分析 此错误主要由**MySQL 8默认启用新身份验证协议**导致[^1],与Jira使用的旧版JDBC驱动不兼容: 1. MySQL 8默认采用`caching_sha2_password`认证插件 2. 旧版MySQL Connector/J驱动(<8.0.16)仅支持`mysql_native_password`协议 3. Jira内置驱动可能低于兼容版本(如常见的5.x驱动) --- ### 分步解决方案 #### 第一步:修改MySQL用户认证方式 ```sql -- 登录MySQL mysql> ALTER USER 'jira_user'@'%' IDENTIFIED WITH mysql_native_password BY 'your_strong_password'; -- 密码需符合MySQL 8复杂度要求 mysql> FLUSH PRIVILEGES; ``` *▸ 关键作用*:强制使用传统认证协议兼容旧驱动[^1] #### 第二步:配置JDBC连接参数 在`dbconfig.xml`文件中增加连接参数(位于`<JIRA_HOME>`目录): ```xml <url>jdbc:mysql://your-mysql-host:3306/jira_db? useSSL=false&amp; allowPublicKeyRetrieval=true&amp; -- 解决公钥检索失败 useUnicode=true&amp; characterEncoding=UTF8 </url> ``` *▸ 注意*:`useSSL=false`仅用于测试环境,生产环境配置有效证书 #### 第三步:升级MySQL驱动(强烈推荐) 1. 下载最新[MySQL Connector/J](https://dev.mysql.com/downloads/connector/j/) (建议8.0.x) 2. 将`mysql-connector-java-8.0.xx.jar`放入目录: ``` <JIRA_Install>/lib/ ``` 3. **删除旧版驱动**(如`mysql-connector-java-5.x.x-bin.jar`) #### 第四步:调整MySQL配置文件 在`my.ini`或`my.cnf`中添加: ```ini [mysqld] default_authentication_plugin=mysql_native_password -- 全局兼容设置 collation-server = utf8_bin character-set-server = utf8 ``` --- ### 必要验证步骤 1. **重启所有服务**: ```powershell net stop MySQL80 net start MySQL80 service JIRA stop service JIRA start ``` 2. **连接测试**: ```shell telnet mysql_host 3306 # 验证网络可达性 mysql -u jira_user -p -h your-mysql-host # 手动登录测试 ``` ### 故障树诊断 ```mermaid graph TD A[Protocol Error] --> B{MySQL用户认证方式} B -->|caching_sha2_password| C[执行ALTER USER修改] A --> D{JDBC驱动版本} D -->|驱动<8.0| E[升级Connector/J] A --> F{连接参数} F -->|缺少allowPublicKeyRetrieval| G[添加URL参数] ``` ### 注意事项 1. **MySQL 8密码策略**:若出现`ERROR 1819`需设置复杂密码 2. **SSL警告**:生产环境必须配置有效证书,替代`useSSL=false` 3. **字符集一致性**:确保数据库/表/字段均为UTF-8编码 4. **驱动冲突**:检查`lib`目录无重复驱动版本 > **关键补丁说明**:当Jira版本低于8.14时,需额外应用补丁[^3],建议升级到Jira 9.x+获得完整MySQL 8支持。 经过以上配置,协议版本错误应当解决。若仍存在问题,可检查Windows Server 2012的TLS设置,确保系统支持TLSv1.2协议(MySQL 8的SSL通信基础)。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值