viernes, 28 de diciembre de 2012

Exportación Esquema Base de Datos Oracle



Exportación de un Esquema de Base de Datos:


1-      Creación de Carpeta

Crear una carpeta donde vamos almacenar la exportación del esquema de base de datos Oracle
Desde línea de comando Linux ejecutar

a)      opt$     mkdir backupora
b)      opt$     chown oracle:oinstall -R   backupora

2-      SQLdeveloper:

a)  SQL> create or replace directory export as '/opt/backupora';
b)  SQL> grant read, write on directory export to NOMBREESQUEMA;

3-      Usuario Oracle

Para definir las variables de entorno hay que iniciar sesión como usuario Oracle para ello hay que ejecutar el siguiente comando

a)      su – oracle
b)      su – Oracle
c)       depende de cómo se halla definido en la instalación, esto se puede verificar  ejecutando la siguiente línea de mando $ set

4-      Definir Variables de Entorno

a)  Instalación se refiere a la carpeta base de la instalación de Oracle
b)  La dirección de ORACLE_HOME puede cambiar dependiendo la versión de oracle instalada
c)  ORACLE_SID=orcl  ORCL es un ejemplo el SID depende de tu instalación
d)  Para verificar las variables si es que ya existen ejecutar desde línea de comando
Opt$ set

Desde línea de comando Linux ejecutar

a)  ORACLE_BASE=/Instalación/oracle
b)  export ORACLE_BASE
c)  ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
d)  export ORACLE_HOME
e)  ORACLE_PATH=$ORACLE_HOME/bin
f)  export ORACLE_PATH
g)  ORACLE_SID=orcl
h)  export ORACLE_SID



5-      Exportación

a)      Desde línea de comando ejecutamos
oracle$] cd $ORACLE_HOME
b)  Al ejecutar el comando cd $ORACLE_HOME debería llevarnos a la dirección que definimos por $ORACLE_HOME 
$ORACLE_BASE/product/11.2.0/dbhome_1
c)  Luego ejecutamos la siguiente línea de comando
oracle]$  cd bin
      
d)  Ejecutamos comando de exportación
oracle@bin]$  ./expdp esquema/passwordEsquema schemas=NOMBREESQUEMA  direcotory=backpora dumpfile=NOMBREEXPORTACION.dmp




jueves, 27 de diciembre de 2012

Cambiar la Carpeta Metadata de Moodle


La carpeta metadata de moodle siempre tiene que estar fuera del directorio www, para no poder mirar el contenido desde la url.
Para cambiar la carpeta por defecto /var/moodledata debemos modificar el archivo congif.php que se encuentra en el directorio www/moodle


$CFG->dbtype    = 'mysqli';

$CFG->dblibrary = 'native';

$CFG->dbhost    = 'ip';

$CFG->dbname    = 'nombre moodle';

$CFG->dbuser    = 'moodlechl';

$CFG->dbpass    = 'moodlechl';

$CFG->prefix    = 'mdl_';

$CFG->dboptions = array (

  'dbpersist' => 0,

  'dbsocket' => 0,

);



$CFG->wwwroot   = 'http://ip/moodlechl';

$CFG->dataroot  = '/var/moodledata';

$CFG->admin     = 'admin';


obviamente que el contenido, del moodledata anterior tiene que ser copiando en la nueva carpeta de moodledata,


jueves, 20 de diciembre de 2012

java.lang.OutOfMemoryError Jboss 4.2.3.ga

Bueno al igual que OC4J hay que aumentar la memoria del servidor de aplicación en jboss es exactamente lo mismo, solo que en un archivo, la ruta del archivo es la siguiente

- jboss/bin/run.conf   (antes de estos, Obviamente tenemos que bajar los servicios =D  )

ahora tenemos que editar el siguiente comando
if [ "x$JAVA_OPTS" = "x" ]; then
   JAVA_OPTS="-Xms128m -Xmx2048m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
fi
Xms128m       : minimo
Xmx2048m     : maximo (debemos de aumentar)

hay veces en la cual usamos mucha memoria en nuestras variables de java, y no la liberamos
antes de aumentar la memoria (XMS y XMX), prueba reiniciando jboss y si el error desaparece, procura liberar la memoria en tus variables y no aumentar la memoria disponible para java.

miércoles, 19 de diciembre de 2012

INSERT CLOB ORACLE

import oracle.sql.CLOB;
import java.sql.PreparedStatement;


 CLOB tempClob = null;
 String texto = "texto muy muy muy largo"; 
 Connection cnx = conexionBD.getConexion();

 String strSQL = "insert into tabla values (?,?,?,?,?,?)";
 PreparedStatement ps = cnx.prepareStatement(strSQL);
      tempClob = CLOB.createTemporary(cnx, true,   CLOB.DURATION_SESSION);

 tempClob.open(CLOB.MODE_READWRITE);
 Writer tempClobWriter = tempClob.getCharacterOutputStream();
 tempClobWriter.write(texto);
 tempClobWriter.flush();
 tempClobWriter.close();
 tempClob.close();

 ps.setInt(1, maxId);
 ps.setInt(2, siteIdCliente);
 ps.setString(3, nombreReporteAdd );
 ps.setString(4, comentarioReporteAdd );
 ps.setClob(5, tempClob);
 ps.setString(6, categoriaReporteAdd );
 ps.execute();
 cnx.close();
 ps.close();

jueves, 13 de diciembre de 2012

java.lang.OutOfMemoryError OC4J

500 Internal Server Error 
 java.lang.OutOfMemoryError

Para Aumentar la Memoria en OC4J

1. Detener Instancia OC4J
2. Cambiar Opciones de java
-Xrs -server -Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true
por
-Xrs -server -Djava.security.policy=$ORACLE_HOME/j2ee/home/config/java2.policy -Djava.awt.headless=true -Xms512m -Xmx512m
3. Levantar Instancia OC4J


miércoles, 12 de diciembre de 2012

resetFileTransaction (OC4J)

Español
Fallo al desplegar la aplicación Web "XXXXX". Fallo al desplegar la aplicación Web "XXXXX". . Hay otra operación en curso que evita que la operación termine en este momento. Vuelva a intentar esta operación más tarde. Resolución:: Si está utilizando un repositorio basado en archivos y no hay ninguna otra operación simultánea, utilice el comando resetFileTransaction de la utilidad dcmctl para limpiar cualquier operación del repositorio basada en archivos que haya terminado de forma anormal.

Ingles
Failed to deploy web application "XXXXXX". Failed to deploy web application "XXXXX". . Another ongoing operation prevents the operation ends at this point. Retry the operation later. Resolution :: If you are using a file-based repository and no other simultaneous operation, use the dcmctl utility resetFileTransaction to clean any operation of file-based repository that has terminated abnormally. Solución:
1.opmnctl: stopping
2.Desde línea de comandos cmd ejecutar   HOMESERVER\dcm\bin> dcmctl resetfiletransaction
3.opmnctl:  startall

martes, 11 de diciembre de 2012

CLOB to String JAVA

Para poder Transformar una columna CLOB en STRING debemos hacer lo siguiente
String strSQL = "select CLOBCOLUMN from TABLE where id=1"
Statement stmt = Cnx.createStatement();
rs = stmt.executeQuery(strSQL);

while(rs.next()){

  Clob clob = rs.getClob(1);  
  
   if (clob != null) {
     if ((int) clob.length() > 0) {  
        query = clob.getSubString(1, (int) clob.length());  
       
     }  
  }
}

System.out.println(query);