安装OPENCMS过程记录

news2024/9/24 7:25:16

今天尝试安装个人网站,或者说是内容管理系统,wordpress 是PHP的,所以上网找了一个免费的,在知乎上基于Java的开源CMS有哪些推荐,各自特点是什么 - 知乎 (zhihu.com)

找了这个opencms,据说是免费,安装包两百多兆,解压后,按照里面文件的提示,copy到tomcat目录下,然后启动tomcat, 文件由servlet解压为目录,然后在浏览器中输入地址localhost:8080/opencms/setup, 开始安装,

在这个页面,开始提示找不到DB,把mysql的bin目录放在系统变量后解决。

接着,提示root密码无效,btsoft自带的mysql5.5 在终端可以无需密码进入,也可以用密码进入,可能无密码进入的不是root ?

在宝塔面板中改密码后解决。

然后开始继续操作,这回提示

java.sql.SQLSyntaxErrorException: (conn=22) Specified key was too long; max key length is 1000 bytes

在MySQL启动配置文件my.ini中添加或修改:

default-storage-engine=INNODB

原因:

activiti在MySQL中对表建立索引时,key的长度超过1000 bytes了,由于MySQL默认使用MyISAM engine,而MyLSAM引擎会有key长度的限制, 超过1000bytes就会报错,所以要将Mysql引擎修改为Innodb。

然后

mysql索引长度超过767bytes, Specified key was too long; max key length is 767 bytes

原因:
msyql5.6及以前版本, 默认索引最大长度767bytes,若使用utf8mb4格式编码(utf8字符占用3字节,utf8mb4字符占用4字节), 则单个字段长度不能超过191, 5.7及之后版本, 限制放开到3072 bytes。

PS: 由于mysql的utf8编码并不是真正UTF-8,详细介绍请自行百度google,推荐使用utf8mb4,这个是通常所说的UTF-8。而utf8mb4的字符占用4字节,所以相较于utf8的占用3字节,更容易出现上面这种索引长度超限的问题。

在5.6及之前版本,若有索引超限的情况,可使用如下方法:
查看配置:

show variables like 'innodb_large_prefix';

show variables like 'innodb_file_format';

修改为如下配置:

set global innodb_large_prefix=1;

set global innodb_file_format=BARRACUDA;

建表时需要指定ROW_FORMAT为dynamic或compressed

eg:

CREATE TABLE IMPORTS

(

`ID` int(10) NOT NULL AUTO_INCREMENT COMMENT '资产ID',

PKG_ID int(10) NOT NULL COMMENT '资产ID',

CLASS_NAME varchar(255) NOT NULL COMMENT '类名',

AUTO_ADD int(1) DEFAULT 1 COMMENT '是否自动添加',

UPDATE_TIME timestamp COMMENT '最后修改时间',

CREATE_TIME timestamp COMMENT '创建时间',

CREATED_BY varchar(50) NOT NULL COMMENT '操作人员名称',

UPDATED_BY varchar(50) NOT NULL COMMENT '操作人员名称',

PRIMARY KEY (`ID`),

UNIQUE (PKG_ID, CLASS_NAME)

) ENGINE=InnoDB ROW_FORMAT=dynamic DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
————————————————
版权声明:本文为CSDN博主「Sword_Shi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jian876601394/article/details/94313071

既然MYSQL 5.7以上的版本就没有这个限制,那么在宝塔面板中更改版本5.7,重启,问题解决。

环境变量还没改为5.7,那么opencms是怎么找到5.7的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1152329.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

腾讯云轻量应用服务器“月流量”不够用怎么办?

腾讯云轻量应用服务器“月流量”不够用怎么办?超额部分支付流量费,价格为0.8元/GB。腾讯云轻量服务器月流量什么意思?月流量是指轻量服务器限制每月流量的意思,不能肆无忌惮地使用公网,流量超额需要另外支付流量费&…

【设计模式】第8节:结构型模式之“适配器模式”

一、简介 适配器模式是用来做适配的,它将不兼容的接口转换为可兼容的接口,让原本由于接口不兼容而不能一起工作的类可以一起工作。 适配器模式角色: 请求者client:调用服务的角色目标Target:定义了Client要使用的功…

前端开发必备技能!用简单CSS代码绘制三角形,提升用户体验

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! 目录 ⭐ 专栏简介 📘 文章引言 一、前…

【流 Stream】数据传输:字节流与字符流详解 文件读写必备基础知识!!!

目录 0 引言1 流 Stream1.1 定义与作用1.2 流的分类1.3 字节流与字符流扩展知识 2 IO编程实践2.1 字节流的使用小结 2.2 字符流的使用2.3 总结 🙋‍♂️ 作者:海码007📜 专栏:C专栏📜 相关文章:字符编码&am…

第五章 I/O管理 六、I/O核心子系统

目录 一、核心子系统 1、I/O调度 2、设备保护 二、假脱机技术 1、脱机: 2、假脱机(SPOOLing技术): 3、应用: 1.独占式设备: 2.共享设备: 4、共享打印机原理分析 三、总结 一、核心子系…

Android 驱动学习调试

1 Android 驱动代码编译 参考https://www.sharetechnote.com/html/Linux_DeviceDriver_Programing.html#Device_Driver_HelloWorld编译ko文件调试驱动代码&#xff0c;将ko文件push到手机上验证 相关C文件testdriver.c #include <linux/init.h> #include <linux/mod…

新恶意软件使用 MSIX 软件包来感染 Windows

人们发现&#xff0c;一种新的网络攻击活动正在使用 MSIX&#xff08;一种 Windows 应用程序打包格式&#xff09;来感染 Windows PC&#xff0c;并通过将隐秘的恶意软件加载程序放入受害者的 PC 中来逃避检测。 Elastic Security Labs 的研究人员发现&#xff0c;开发人员通常…

华为机试题:HJ8 合并表记录

目录 第一章、算法题1.1&#xff09;题目描述1.2&#xff09;解题思路与答案1.3&#xff09;牛客链接 友情提醒: 先看文章目录&#xff0c;大致了解文章知识点结构&#xff0c;点击文章目录可直接跳转到文章指定位置。 第一章、算法题 1.1&#xff09;题目描述 题目描述&…

谁知道腾讯云轻量服务器“月流量”是什么意思?

腾讯云轻量服务器月流量什么意思&#xff1f;月流量是指轻量服务器限制每月流量的意思&#xff0c;不能肆无忌惮地使用公网&#xff0c;流量超额需要另外支付流量费&#xff0c;上海/广州/北京等地域的轻量服务器月流量不够用超额部分按照0.8元/GB的价格支付流量费。阿腾云aten…

cocos tilemap的setTileGIDAt方法不实时更新

需要取消勾选 Enable Culling。同时代码添加&#xff1a;markForUpdateRenderData函数。 floor.setTileGIDAt(102427,newP.x,newP.y,0); //中心 floor.markForUpdateRenderData(); 具体问题参考官网说明&#xff1a; Cocos Creator 3.2 手册 - 项目设置

软考网工历年简答题汇总(2016下半年~2023年上半年)

目录 2016年下半年 2018年上半年 2018年下半年 2021年上半年 2022年上半年 2022年下半年 2023年上半年 2016年下半年 试题一&#xff1a; 【问题 3】若地址规划如图 1-1 所示&#xff0c;从IP 规划方案看该地址的配置可能有哪些方面的考虑&#xff1f; 答案&#xff…

博客系统的前后端实现

前面的学习中, 我们基于 HTML, CSS, JavaScript 实现了一个简单的博客系统的页面. 接下来我们基于博客系统页面来实现一个带服务器版本的博客程序. 1.准备工作 1.创建项目 2.引入依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns…

简单聊聊远程协同运维定义以及优势-行云管家

很多新人小伙伴对于远程协同运维不是很了解&#xff0c;今天我们就来简单聊聊远程协同运维定义以及优势。 远程协同运维定义 远程协同运维其实非常容易理解&#xff0c;主要是指计算机系统技术服务工程相关的人员通过局域网或者是其他网络对于它来进行连接&#xff0c;共同远…

【PyQt学习篇 · ⑦】:QWidget - 父子关系扩充和层级控制

文章目录 父子关系扩充常用API案例 层级控制案例 父子关系扩充 常用API childAt(x, y) 函数可以根据传入的坐标参数获取该QWidget中位于该坐标位置的子QWidget&#xff0c;如果该位置没有子QWidget则返回None。 parentWidget() 函数可以获取当前QWidget的父QWidget&#xff0…

k8s之pod

目录 一、Pod基础概念 1.1 在Kubrenetes集群中Pod有如下两种使用方式 1.2 pod的种类 二、容器的分类 &#xff08;1&#xff09;基础容器&#xff08;pause&#xff09; &#xff08;2&#xff09;初始化容器&#xff08;initcontainers&#xff09; &#xff08;3&#…

数字经济之于城市碳排放:“加速器”抑或“减速带”?

数据简介&#xff1a;数字经济是我国经济高质量发展的核心驱动力&#xff0c;在提升碳福利绩效过程中发挥重要作用&#xff0c;其在许多方面都能提供减少碳排放的机会。通过数字化和物联网技术&#xff0c;能源系统、交通运输、城市规划等领域可以实现智能化管理和优化&#xf…

VPN与IP代理用哪个好?有何区别?

当谈到网络安全和IP变更时&#xff0c;人们会想到VPN和IP代理服务器。很多人很困惑&#xff0c;它们之间有什么区别&#xff0c;应该选择哪一个呢&#xff1f;这取决于您的需求来决定哪一个更好。 一、什么是VPN与IP代理&#xff1f; VPN 是虚拟专用网络 (Virtual Private Net…

软件测试进阶篇----接口测试

接口测试 一、接口的概述 接口是什么&#xff1f; 在系统与系统之间、子系统与子系统之间数据交互的功能就是接口。 接口就是一个特定功能的函数&#xff08;方法&#xff09;&#xff0c;有参数&#xff0c;有返回值&#xff0c;调用者需要通过某种方式&#xff08;网络协议&…

CVE-2021-21234 spring-boot-actuator-logview目录遍历漏洞

0x01 影响版本 Spring-Boot-Actuator-logview < 0.2.13 0x02 漏洞分析 源码中对filename进行了校验但并未对路径进行校验 校验函数如下&#xff1a; 0x03 漏洞复现 首先开vulhub的镜像 点击下载&#xff0c;原数据包如下 送入repeater打入payload&#xff0c;复现…

【机器学习】一、机器学习概述与模型的评估、选择

机器学习简介 由来 阿瑟.萨缪尔Arthur Samuel,1952年研制了一个具有自学习能力的西洋跳棋程序&#xff0c;1956年应约翰.麦卡锡John McCarthy&#xff08;人工智能之父&#xff09;之邀&#xff0c;在标志着人工智能学科诞生的达特茅斯会议上介绍这项工作。他发明了“机器学习…