En este Blog mostrare información referente a temas informáticos. Los temas sobre servidores Linux y Microsoft; Desarrollo de aplicaciones; Motores de Base de datos y otros que serán abordados de manera Técnica.
martes, 21 de agosto de 2012
ORA-28002: the password will expire within X days
ORA-28002: the password will expire within X days
Cuando nos da el Error: ORA-28002: the password will expire within X days, por mas que cambiemos PASSWORD_LIFE_TIME y PASSWORD_GRACE_TIME, no podemos salir de este estado.
PASOS
1 Solución: Cambiar la clave del usuario.
En el caso que "No se quiera cambiarla" y dejar la misma, pero no sabemos cual es la actual podemos hacer la siguiente consulta:
select a.name,
a.password,
b.account_status,
'alter user "' || a.name || '" identified by values ''' || a.password || ''';'
from sys.user$ a, dba_users b
where b.username = a.name
2 Con el resultado de la consulta, seteamos la misma clave que tienen actualmente los usuarios.
alter user "PRACTICA1" identified by values '6FEBDC5C15A858CA';
Luego de esto, si que se quiere que las claves no expiren mas, ejecutar:
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED;
Referencia: http://efren9.blogspot.com/2011/09/ora-28002-password-will-expire-within-x.html
viernes, 11 de mayo de 2012
Crear tabla apartir de un Select y Insertar informacion mediante un select + where
Creamos la tabla, luego insertamos registro mediante un select + where, y luego para eliminamos los registros de la tabla principal.
INSERT INTO reservas.TABLE_AUDIT_AUX (select * from reservas.TABLE_AUDIT t where to_char(t.updatedate,'MM/YYYY') = '05/2011')
* Delete
DELETE from reservas.TABLE_AUDIT t where to_char(t.updatedate,'MM/YYYY') = '05/2011'
Crear Tablespace Oracle
Creación de tablespace para la tabla e index.
CREATE TABLESPACE T_AUDIT DATAFILE '/u01/oracle/oracle11g/oradata/resdb/t_audit_01.dbf' SIZE 2048M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
CREATE TABLESPACE T_AUDIT_INX DATAFILE '/u01/oracle/oracle11g/oradata/resdb/t_audit_inx_01.dbf' SIZE 1024M EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;
miércoles, 9 de mayo de 2012
Detectar bloqueos en Oracle y eliminarlo
1 .- Listar los bloqueos
SELECT /*+ FULL(s) PARALLEL(l, 5) */
decode(L.TYPE,'TM','TABLE','TX','Record(s)') TYPE_LOCK,
decode(L.REQUEST,0,'NO','YES') WAIT,
S.OSUSER OSUSER_LOCKER,
S.PROCESS PROCESS_LOCKER,
S.USERNAME DBUSER_LOCKER,
O.OBJECT_NAME OBJECT_NAME,
O.OBJECT_TYPE OBJECT_TYPE,
concat(' ',s.PROGRAM) PROGRAM,
O.OWNER OWNER
FROM v$lock l,dba_objects o,v$session s
WHERE l.ID1 = o.OBJECT_ID
AND s.SID =l.SID
AND l.TYPE in ('TM','TX');
SELECT /*+ FULL(s) PARALLEL(l, 5) */
decode(L.TYPE,'TM','TABLE','TX','Record(s)') TYPE_LOCK,
decode(L.REQUEST,0,'NO','YES') WAIT,
S.OSUSER OSUSER_LOCKER,
S.PROCESS PROCESS_LOCKER,
S.USERNAME DBUSER_LOCKER,
O.OBJECT_NAME OBJECT_NAME,
O.OBJECT_TYPE OBJECT_TYPE,
concat(' ',s.PROGRAM) PROGRAM,
O.OWNER OWNER
FROM v$lock l,dba_objects o,v$session s
WHERE l.ID1 = o.OBJECT_ID
AND s.SID =l.SID
AND l.TYPE in ('TM','TX');
Expdp e Impdp
Datapump dejó por el camino, a partir de Oracle 10, a las viejas utilidades de exp e imp ya conocidas. Con las características de direct path y ejecuciones en paralelo datapump es mucho más veloz que sus antecesores.
Los tradicionales exp e imp corren del lado del cliente (client-side) mientras que expdp e impdp lo hacen del lado del servidor (server-side), lo que hace que sea más manejable.
Procesos involucrados en los trabajos de datapump:
Client process: este proceso es iniciado por la utilidad del cliente, llamando a la API datapump. Una vez que se inicia el datapump, este proceso no es necesario para el resto del trabajo.
Los tradicionales exp e imp corren del lado del cliente (client-side) mientras que expdp e impdp lo hacen del lado del servidor (server-side), lo que hace que sea más manejable.
Procesos involucrados en los trabajos de datapump:
Client process: este proceso es iniciado por la utilidad del cliente, llamando a la API datapump. Una vez que se inicia el datapump, este proceso no es necesario para el resto del trabajo.
viernes, 23 de marzo de 2012
Export e Import - Oracle
Import:
imp system/123456 file=/u01/dmps/xx_yyy.dmp log=/u01/dmps/xx_yy.log fromuser=XX_YY touser=XX
imp system/123456 file= /u01/dmps/xx_yyy.dmp full=yes ignore=yes log= /u01/dmps/xx_yy.log buffer=1000000
impdp system/password@db10g full=Y directory=DATA_PUMP_DIR dumpfile=DB10G.dmp logfile=impdpDB10G.log
SQL> grant select on v_$session to system;
expdp system/renata0505@vipa full=y directory=DATA_PUMP_DIR dumpfile=bd-total-vipa_$FECHA_ACTUAL.dmp logfile=bd-total-vipa_$FECHA_ACTUAL.log
URL: http://www.oracle-base.com/articles/10g/oracle-data-pump-10g.php
imp system/123456 file=/u01/dmps/xx_yyy.dmp log=/u01/dmps/xx_yy.log fromuser=XX_YY touser=XX
imp system/123456 file= /u01/dmps/xx_yyy.dmp full=yes ignore=yes log= /u01/dmps/xx_yy.log buffer=1000000
impdp system/password@db10g full=Y directory=DATA_PUMP_DIR dumpfile=DB10G.dmp logfile=impdpDB10G.log
SQL> grant select on v_$session to system;
Export:
expdp system/renata0505@vipa full=y directory=DATA_PUMP_DIR dumpfile=bd-total-vipa_$FECHA_ACTUAL.dmp logfile=bd-total-vipa_$FECHA_ACTUAL.log
URL: http://www.oracle-base.com/articles/10g/oracle-data-pump-10g.php
jueves, 22 de marzo de 2012
Añadir un datafile a un tablespace en Oracle 11g
SQL>SELECT FILE_NAME, BYTES FROM DBA_DATA_FILES WHERE TABLESPACE_NAME ='DATOS
FILE_NAME Tamaño en MB
-------------------------------------------------------------- -----------------
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_01.dbf 32768
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_02.dbf 32768
FILE_NAME Tamaño en MB
-------------------------------------------------------------- -----------------
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_01.dbf 32768
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_02.dbf 32768
SQL> ALTER TABLESPACE DATOS ADD DATAFILE '/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_03.dbf’ SIZE 5120M;
SQL>SELECT FILE_NAME, BYTES FROM DBA_DATA_FILES WHERE TABLESPACE_NAME ='DATOS
FILE_NAME Tamaño en MB
-------------------------------------------------------------- -----------------
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_01.dbf 32768
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_02.dbf 32768
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_03.dbf 5120
SQL>SELECT FILE_NAME, BYTES FROM DBA_DATA_FILES WHERE TABLESPACE_NAME ='DATOS
FILE_NAME Tamaño en MB
-------------------------------------------------------------- -----------------
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_01.dbf 32768
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_02.dbf 32768
/u02/oradata/PRUEBA01/dat/PRUEBA01_DATOS_03.dbf 5120
ORA-00845: MEMORY_TARGET not supported on this system
Paso 1
root: # mount -t tmpfs shmfs -o size=1500m /dev/shm
# df -k
Paso 2
sqlplus:
SQL>startup
jueves, 23 de febrero de 2012
Error ORA-00020 - ORA-12520
ORA-00020: maximum number of processes (%s) exceeded
ORA-12520: TNS:listener could not find available handler for requested type of server
La solución al momento que le di fue reiniciar el servidor.
Como configurar el Enterprise Manager en Oracle 11g R2
Cuando instalamos una BDD es posible que no configuremos el Enterprise Manager (EM) pensando que no lo usaremos. Esto suele pasar cuando tiene el EM local de la 9i, o el EM Console, y no te quieres complicar la vida instalando estos servicios (que consumen lo suyo en el servidor) en cada BDD. Sobretodo si tienes una media de 5 por servidor :P
Ahora nos hemos encontrado con que un proyecto "necesita" esta consola, asi que se la tenemos que configurar. Lo bueno es que estos pasos no requieren parar la BDD :)
Antes de hacer nada, hemos de tener configurado bien las variables de entorno:
- ORACLE_HOME=[Path oracle home]
- ORACLE_SID=[SID]
- ORACLE_UNQNAME=[SID]
miércoles, 22 de febrero de 2012
Suscribirse a:
Comentarios (Atom)