在 Magnolia 中:用 MySQL 替换 H2:JackRabbit 无法实例化持久性管理器
In Magnolia: Replacing H2 with MySQL: JackRabbit Cannot instantiate persistence manager
我想使用 MySQL 而不是嵌入式 H2 设置 Magnolia。
我遵循了 Magnolia 和 JackRabbit Wiki:https://wiki.magnolia-cms.com/display/WIKI/Setting+up+a+Jackrabbit+persistence+manager,并进行了 4 项必需的更改:
我安装了 MySQL 并创建了一个 Magnolia 数据库和一个可以访问它的用户:
创建数据库 magnl_author;
创建数据库 magnl_public;
创建用户 'mgnl_admin'@'localhost' 由 'superuser' 识别;
将 magnl_author.* 上的所有权限授予 'mgnl_admin'@'localhost';
将 magnl_public.* 上的所有权限授予 'mgnl_admin'@'localhost';
我设置magnolia.repositories.jackrabbit.config=WEB-INF/config/repo-conf/jackrabbit-bundle-mysql-search.xml在magnolia.properties.xml
我添加了mysql-connector-java-8.0.16.jar到webapps\magnoliaAuthor\WEB-INF\lib 并删除了 derby-10.14.1.0.jar
我配置了 jackrabbit-bundle-mysql-search.xml 可以在 https://drive.google.com/file/d/13QImOipAUwZd0bOTFi_kZloIG549URpk/view?usp=sharing 中看到,所以PM(持久性管理器)针对版本控制和工作区进行配置。
但是当我启动 Tomcat 时,我仍然收到以下错误:
错误 org.apache.jackrabbit.core.RepositoryImpl:无法启动存储库: 无法实例化持久性管理器 org.apache.jackrabbit.core.persistence.pool.MySqlPersistenceManager
根据您的堆栈跟踪,您的问题似乎与时区有关。我建议暂时将其设置为 UTC,看看是否对您有帮助。
为此,请在您的配置中附加以下行:
&serverTimezone=UTC
例如
<param name="url" value="jdbc:mysql://localhost:3306/magnolia" />
变成
<param name="url" value="jdbc:mysql://localhost:3306/magnolia?serverTimezone=UTC" />
希望对您有所帮助,
干杯,
我想使用 MySQL 而不是嵌入式 H2 设置 Magnolia。
我遵循了 Magnolia 和 JackRabbit Wiki:https://wiki.magnolia-cms.com/display/WIKI/Setting+up+a+Jackrabbit+persistence+manager,并进行了 4 项必需的更改:
我安装了 MySQL 并创建了一个 Magnolia 数据库和一个可以访问它的用户:
创建数据库 magnl_author;
创建数据库 magnl_public;
创建用户 'mgnl_admin'@'localhost' 由 'superuser' 识别;
将 magnl_author.* 上的所有权限授予 'mgnl_admin'@'localhost';
将 magnl_public.* 上的所有权限授予 'mgnl_admin'@'localhost';
我设置magnolia.repositories.jackrabbit.config=WEB-INF/config/repo-conf/jackrabbit-bundle-mysql-search.xml在magnolia.properties.xml
我添加了mysql-connector-java-8.0.16.jar到webapps\magnoliaAuthor\WEB-INF\lib 并删除了 derby-10.14.1.0.jar
我配置了 jackrabbit-bundle-mysql-search.xml 可以在 https://drive.google.com/file/d/13QImOipAUwZd0bOTFi_kZloIG549URpk/view?usp=sharing 中看到,所以PM(持久性管理器)针对版本控制和工作区进行配置。
但是当我启动 Tomcat 时,我仍然收到以下错误: 错误 org.apache.jackrabbit.core.RepositoryImpl:无法启动存储库: 无法实例化持久性管理器 org.apache.jackrabbit.core.persistence.pool.MySqlPersistenceManager
根据您的堆栈跟踪,您的问题似乎与时区有关。我建议暂时将其设置为 UTC,看看是否对您有帮助。
为此,请在您的配置中附加以下行:
&serverTimezone=UTC
例如
<param name="url" value="jdbc:mysql://localhost:3306/magnolia" />
变成
<param name="url" value="jdbc:mysql://localhost:3306/magnolia?serverTimezone=UTC" />
希望对您有所帮助,
干杯,