安装OPENCMS过程记录
最佳答案 问答题库748位专家为你答疑解惑
今天尝试安装个人网站,或者说是内容管理系统,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的。
99%的人还看了
相似问题
- Python入门教学——输入任意长度的int整型一维数组
- 关于js中数组push之后长度明明有但是获取长度和随意的数组下标的时候不正常的问题
- 【Excel】补全单元格值变成固定长度
- [POI2006] OKR-Periods of Words——最大周期长度(扩展最小周期长度)
- leetcode_2609 最长平衡字符串长度
- LLMs:大语言模型的核心技术之上下文窗口长度技术的简介(核心技术拆解)、发展历史、案例应用之详细攻略
- LeetCode:318. 最大单词长度乘积(C++)
- 【每日一题Day370】LC318最大单词长度乘积 | 哈希表 位运算
- LeetCode 318. 最大单词长度乘积
- 【教3妹学编程-算法题】最大单词长度乘积
猜你感兴趣
版权申明
本文"安装OPENCMS过程记录":http://eshow365.cn/6-30989-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!