在丢失任何数据的情况下更改 Liferay 中的数据库

Change database in Liferay with losing any data

截至今天,我正在使用默认的 hsql 数据库开发 liferay 门户增强功能。我实现了许多功能并创建了多个具有不同角色和用户的网站和网站模板。

1) 现在我想将数据库从hsql 数据库更改为PostgreSQL。现在我怎样才能在丢失任何数据(站点、用户、角色和站点模板)的情况下更改数据库?

2) 我有一个部署了另一个 tomcat 实例的 Web 应用程序。现在我想从 servlet 执行 liferay 数据库事务。 transactions 意味着需要根据 emailId 或 ScreenName 获取用户详细信息?

任何人都可以确认我怎样才能完成上述任务,如果有人提出一些有用的建议 tutorials.procedure 来做同样的事情,我将非常感激。

1.) 您可以通过控制面板迁移数据。导航到服务器管理,有一个选项卡:数据迁移。您提供新数据库的凭据并点击提交。就这样。 2.) 老实说,我不明白你的 2.nd 问题。

要将您的数据库从 hsql 更改为 PostgreSQL,最好的选择是更改您门户的门户-ext.properties:

#
# PostgreSQL Config
#
jdbc.default.driverClassName=org.postgresql.Driver
jdbc.default.url=jdbc:postgresql://localhost:5432/***databasename***
jdbc.default.username=
jdbc.default.password=

或者在你 /tomcat/conf/context.xml 你可以这样定义一些:

 <Resource auth="Container" driverClassName="org.postgresql.Driver" maxActive="20" name="jdbc/LiferayPool" password="" type="javax.sql.DataSource" url="jdbc:postgresql://localhost:5432/**database name**" username=""/>

关于你的第二个问题,我认为你可以使用 Liferay 网络服务。你可以在你的 portal relative url:

中看到它们

/api/jsonws