Forums

angle-left Back

RE: Liferay database mysql

AM
ANTONIO MULASSO, modified 5 Years ago.

Liferay database mysql

New Member Posts: 7 Join Date: 4/3/12 Recent Posts
Ciao ragazzi, finalmente sono riuscito a far partire la mia prima installazione di Liferay Community Edition.
Vorrei porvi una domanda, ho un server con installato easyphp comprensivo di phpadmin. Ora vorrei usare il database mysql c'è un modo per farli interloquire? ed in che modo.
Grazie
marco mancini, modified 5 Years ago.

RE: Liferay database mysql

New Member Posts: 5 Join Date: 9/4/12 Recent Posts
Ciao Antonio,

non ho capito bene il tuo problema, provo a rispondere al tuo quesito.

Se non mi sbaglio hai installato liferay utilizzando la configurazione standard che utilizza il database base consigliato solo per gli sviluppi allora la cosa migliore e eseguire una nuova installazione e quando appare la prima schermata cambiare database inserendo i parametri di connessioni relativi al mysql di easyphp.

Se invece vuoi semplicemente vuoi realizzare una portlet che utilizza questo database esterno ti consiglio di leggerti questo blog realizzato dai nostri amici della d'vel

http://blog.d-vel.com/web/blog/home/-/blogs/collegare-database-esistenti-a-portlet-sviluppate-in-liferay


- Marco
Riccardo Ferrari, modified 5 Years ago.

RE: Liferay database mysql

Regular Member Posts: 139 Join Date: 11/13/10 Recent Posts
Ciao,

on necessariamente devi partire da zero. Puoi anche utilizzare i migration tool nel pannello di Server Administration. Prima di migrare verso MySQL assicurati che ci sia il mysql.jar in tomcat/lib/ext
Jader Francia, modified 5 Years ago.

RE: Liferay database mysql

Junior Member Posts: 65 Join Date: 1/30/10 Recent Posts
Forse intendi che vorresti installare liferay utilizzando il db mysql?
Se intendi questo, allora e' facile:
-> crea un file chiamato portal-ext.properties e mettilo nella directory sorella di dove c'e' tomcat
-> dentro metti questa riga:


jdbc.default.jndi.name=jdbc/LiferayPool


poi spostati dentro a tomcat/conf ed edita
context.xml

Qui aggiungi, prima del tag </Context>, questo frammento di XML:


<Resource name="jdbc/LiferayPool" auth="Container" type="javax.sql.DataSource" description="Datasource for Liferay webapp" username="[b]tuouser[/b]" password="[b]tuapassword[/b]" driverClassName="com.mysql.jdbc.Driver" url="[b]latuaconnessionealdb[/b]" maxActive="20" maxIdle="5" maxWait="50" removeAbandoned="true"/>


Fai ripartire e dovresti trovarti tutto funzionante su Mysql.
Ovviamente se segui questa strada perdi tutti i dati che hai inserito nel db di test che avevi; se vuoi recuperarli, prima di fare quello che ho scritto sopra, puoi usare il tool di migrazione del db che trovi in: "Pannello di controllo -> Server -> Server Administration -> Data Migration".

Facci sapere se ti occorre altro! ;)

A presto, ciao, J.

P.S. Grazie per la segnalazione indiretta Marco! ;)
AM
ANTONIO MULASSO, modified 5 Years ago.

RE: Liferay database mysql

New Member Posts: 7 Join Date: 4/3/12 Recent Posts
Ciao ho fatto la modifica in merito al post di Jader, inserende nella root C:\tomcat7 il file portal-ext.properties con questi valori: jdbc.default.jndi.name=jdbc/LiferayPool

Dopodiché c:\timcat7\conf nel file context.xml questi valori
<Context>
<Resource name="jdbc/LiferayPool" auth="Container" type="javax.sql.DataSource"
description="Datasource for Liferay webapp" username=" root" password=" "
driverClassName="com.mysql.jdbc.Driver" url="192.16820.5"
maxActive="20" maxIdle="5" maxWait="50" removeAbandoned="true"/>
</Context>
Spero di non aver sbagliato
AM
ANTONIO MULASSO, modified 5 Years ago.

RE: Liferay database mysql

New Member Posts: 7 Join Date: 4/3/12 Recent Posts
Ah, dimeticavo ho fatto ripartire lo starup di tomcat, ma non parte liferay.

Grazie
Mauro Mariuzzo, modified 5 Years ago.

RE: Liferay database mysql

Regular Member Posts: 141 Join Date: 7/23/07 Recent Posts
Ciao,

se il tomcat che dovrebbe contenere Liferay si trova direttamente in "C:\" incontrerai sicuramente delle difficoltà.

La struttura di una installazione "semplice" di Liferay prevede una cartella base, logicamente indicata come "liferay.home", all'interno della quale si sviluppa l'installazione.
Se hai usato il bundle quello che ottieni è già strutturato in questo modo. Altrimenti puoi usare una struttura del tipo:
  • C:\liferay-portal-6.1-ga2 come cartella base (o liferay.home)
  • dentro avrai la cartella tomcat-7.0.27 (con il Liferay installato)


Jader, giustamente, suggerisce di creare il portal-ext.properties nella "liferay.home"; ovvero la cartella che contiene la cartella tomcat.
Ovvero devi creare il file nella stessa cartella dove si trova portal-setup-wizard.properties. Nel mio esempio "C:\liferay-portal-6.1-ga2".

Per configurare il database hai due opzioni:
  • utilizzare una risorsa JNDI (come suggerito da jader) e quindi demandare a Tomcat anche la gestione del pool delle connessioni
  • impostare le proprietà "jdbc.default.*" (nel portal-ext.properties) e far gestire tutto direttamente da Liferay


La configurazione per un MySQL è la seguente
   
    jdbc.default.driverClassName=com.mysql.jdbc.Driver
    jdbc.default.url=jdbc:mysql://localhost/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
    jdbc.default.username=
    jdbc.default.password=


Guarda caso queste 4 proprietà sono anche quelle che ti vengono chieste quando, da ControlPanel - Data Migration, vuoi migrare il database di Liferay da un engine ad un altro.

Alcuni appunti sparsi:
  • per Liferay basta che crei un database vuoto, si arrangia lui a popolarlo. Creane uno apposta per lui
  • il database deve avere la codifica utf8 e deve essere InnoDB (Liferay pretende un db transazionale)
  • la migrazione da Hipersonic (l'engine di esempio) mi è funzionata solo poche volte, purtroppo.
  • se funziona, la migrazione non crea tutti gli indici
  • se hai poca esperienza su tomcat ti consiglio di usare le properties
AM
ANTONIO MULASSO, modified 5 Years ago.

RE: Liferay database mysql

New Member Posts: 7 Join Date: 4/3/12 Recent Posts
Ho creato un file portal-ext.properties direttamentamente nella cartella radice liferay-portal-6.1.1-ce-ga2, dopodichè all'interno dello stess file ho inserito questi parametri:
jdbc.default.jndi.name=jdbc/LiferayPool
jdbc.default.driverClassName=com.mysql.jdbc.Driver
jdbc.default.url=jdbc:mysql://192.168.20.5/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=

Nella riga jdbc.default.url=jdbc:mysql://192.168.20.5/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false (ho messo l'ip del server dove risiede MySql), lo startup di tomcat non da errori ma il portale non si avvia, ma compare questo messaggio quando clicco http://localhost:8080/web/guest/5, errore 404 Pagina non trovata.

Grazie
Riccardo Ferrari, modified 5 Years ago.

RE: Liferay database mysql

Regular Member Posts: 139 Join Date: 11/13/10 Recent Posts
Se leggi i logs (tomcat/logs/catalina.out), dovresti avere delle eccezioni che spiegano la natura del problema.
A prima pelle noto che:

jdbc.default.jndi.name=jdbc/LiferayPool <- Risorsa JNDI

jdbc.default.driverClassName=com.mysql.jdbc.Driver <-Liferay pool
jdbc.default.url=jdbc:mysql://192.168.20.5/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=


stai configurando due connessioni al DB, la prima gestita dall'AS (o meglio Servlet container in caso di Tomcat) mentre la seconda gestita direttamente da Liferay. Dovresti decidere quale si adatta alle tue esigenze.

Saluti,
Riccardo
AM
ANTONIO MULASSO, modified 5 Years ago.

RE: Liferay database mysql

New Member Posts: 7 Join Date: 4/3/12 Recent Posts
ok, ho modificato il file con questi parametri, ma il problema sussiste ancora.
jdbc.default.driverClassName=com.mysql.jdbc.Driver --- qui ho usato il pool
jdbc.default.url=jdbc:mysql://192.168.20.5/lportal?useUnicode=true&characterEncoding=UTF-8&useFastDateParsing=false
jdbc.default.username=root
jdbc.default.password=

Il file catalina.out non esiste nella cartella C:\liferay-portal-6.1.1-ce-ga2\tomcat-7.0.27\logs, ma solo questo catalina.2012-12-21.log, ma non c'è nulla.
Grazie