O genial, por fin una solución bastante sencilla a este problema,
pues suele pasar que estamos conectados a un servidor usando ssh y MOCOS!!! se pierde la conexión , y hay q volver a conectarse y exportar variables o levantar servicios, para evitar esto , basta con hacer:
vi /etc/ssh/ssh_config
y agregar la línea
ServerAliveInterval 60
Con el número 60 indicamos que cada minuto se envien datos al servidor para mantener viva la conexión!!!!!!
FUENTE: http://www.lopst.com/?p=784
jueves, 26 de mayo de 2011
martes, 26 de abril de 2011
DEDOS CHUECOS

Para aquellos que tienen los dedos chuecos como yo, y en ocaciones escriben "sl" en lugar de "ls" , pues aqui tienen un tren
Para instalar este paquete solo hay que hacer:
#apt-get install sl
O si quieren ver una vaca que habla, hagan:
#apt-get cowsay
y ejecuten:
$cowsay hola campeones, y saldrá una vaca
< hola campeones >
------
\ ^__^
\ (oo)\_______
(__)\ )\/\
||----w |
|| ||rlwrap
Algo que puede llegar a ser bastante molesto es volver a escribir una consulta, sobre todo cuando son muy largas, cosa que si puede ocacionar extrañar a WINDOWS!!!( Dios no lo quiera) para esto exite rlwrap :D
#apt-get install rlwrap
Y LISTO!!!!!!!!!!!!!!!!!!!!!!!!!!!
Tenemos nuestro Buffer en nuestra sagrada terminal al momento de usar Linux
#apt-get install rlwrap
Después de esto solo agregamos una línea a nuestro bash :p
#vi ~/.bashrcalias sqlplus='rlwrap sqlplus'Y LISTO!!!!!!!!!!!!!!!!!!!!!!!!!!!
Tenemos nuestro Buffer en nuestra sagrada terminal al momento de usar Linux
~/.bashrc, ~/.bash_profile, /etc/bashrc, /etc/profile
Bien en muchas ocaciones es necesario crear alias, o exportar alguna variable, y es aqui donde entra la duda "en que archivo lo hago", bien es muy fácil:
Si queremos que estos cambios o alias se apliquen a TODOS LOS USUARIOS,
/etc/bashrc Se ejecuta cada vez que se ejecuta el programa bash
/etc/profile Se ejecuta cuando los usuarios inician sesión
Si queremos que estos cambios o alias se apliquen a SOLO UN USUARIO, tendriamos que editar alguno de estos archivos:
~/.bashrc Se ejecuta cada vez que iniciamos el programa bash
~/.bash_profile Se ejecuta cuando el usuario inicia sesión
NOTA: Recordemos que el caracter ~ significa que estamos en el home de un usuario, en otras palabras si somos el usuario oracle ~ significa /home/oracle
Si queremos que estos cambios o alias se apliquen a TODOS LOS USUARIOS,
/etc/bashrc Se ejecuta cada vez que se ejecuta el programa bash
/etc/profile Se ejecuta cuando los usuarios inician sesión
Si queremos que estos cambios o alias se apliquen a SOLO UN USUARIO, tendriamos que editar alguno de estos archivos:
~/.bashrc Se ejecuta cada vez que iniciamos el programa bash
~/.bash_profile Se ejecuta cuando el usuario inicia sesión
NOTA: Recordemos que el caracter ~ significa que estamos en el home de un usuario, en otras palabras si somos el usuario oracle ~ significa /home/oracle
lunes, 25 de abril de 2011
ORA-00132
Al tratar de iniciar la base de datos Oracle muestra el siguiente error:
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_OPROD3'
Bien si observamos un poco, vemos que esta marcando errores de sintaxis, lo que debemos hacer es lo siguiente:
1.-Editar el archivo tnsnames.ora
vi $ORACLE_HOME/network/admin/tnsnames.ora
2.-Agregar los datos del listener que está marcando error, en mi caso agrego la siguiente línea:
LISTENER_OPROD3 =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
y listo
SQL> startup
ORA-00119: invalid specification for system parameter LOCAL_LISTENER
ORA-00132: syntax error or unresolved network name 'LISTENER_OPROD3'
Bien si observamos un poco, vemos que esta marcando errores de sintaxis, lo que debemos hacer es lo siguiente:
1.-Editar el archivo tnsnames.ora
vi $ORACLE_HOME/network/admin/tnsnames.ora
2.-Agregar los datos del listener que está marcando error, en mi caso agrego la siguiente línea:
LISTENER_OPROD3 =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
y listo
miércoles, 20 de abril de 2011
Insertar millones de datos aleatorios en Oracle
Bien, hay bastantes entradas en Internacho sobre este tema, solo pondré un script para insertar y millon y medio de registros en una tabla:
begin
for i in 1..1500000 loop
insert into pruebas2 values(
i,
dbms_random.string('U', 200),
ROUND(DBMS_RANDOM.VALUE(1,1000000000)),
to_date(trunc(dbms_random.value(2454867,2455598)), 'J'),
EMPTY_BLOB()
--Opcional para hacer commit cada 1,000 registros
if mod(i,1000)=0 then
commit;
end if;
end loop;
end;
/
begin
for i in 1..1500000 loop
insert into pruebas2 values(
i,
dbms_random.string('U', 200),
ROUND(DBMS_RANDOM.VALUE(1,1000000000)),
to_date(trunc(dbms_random.value(2454867,2455598)), 'J'),
EMPTY_BLOB()
--Opcional para hacer commit cada 1,000 registros
if mod(i,1000)=0 then
commit;
end if;
end loop;
end;
/
viernes, 15 de abril de 2011
Acceder a Oracle con el usuario sys sin el privilegio de SYSDBA
Muchas veces tratamos de acceder a Oracle con el usuario "SYS" y nos muestra el siguiente error
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Esto se soluciona de la siguiente manera
-Nos conectamos a oracle como sysdba y cambiamos el valor de O7_DICTIONARY_ACCESSIBILITY a true
SQL> conn / as sysdba
SQL> SHOW PARAMETER O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
SQL> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
2.-Damos de baja la base de datos y la iniciamos
SQL> shutdown immediate;
SQL> startup
3.-Ahora ya podemos conectanor con el usuario sys
SQL> conn sys/lennon
Connected.
SQL> show parameter O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean TRUE
NOTA: estas conectado como el usuario sys , pero no tienes el privilegio de sysdba asi que no podras ser dios :p
SQL> shutdown immediate;
ORA-01031: insufficient privileges
SQL> show user
USER is "SYS"
FUENTE:http://arjudba.blogspot.com/2008/05/ora-28009-connection-as-sys-should-be.html
ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Esto se soluciona de la siguiente manera
-Nos conectamos a oracle como sysdba y cambiamos el valor de O7_DICTIONARY_ACCESSIBILITY a true
SQL> conn / as sysdba
SQL> SHOW PARAMETER O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean FALSE
SQL> ALTER SYSTEM SET O7_DICTIONARY_ACCESSIBILITY=TRUE scope=spfile;
2.-Damos de baja la base de datos y la iniciamos
SQL> shutdown immediate;
SQL> startup
3.-Ahora ya podemos conectanor con el usuario sys
SQL> conn sys/lennon
Connected.
SQL> show parameter O7_DICTIONARY_ACCESSIBILITY
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
O7_DICTIONARY_ACCESSIBILITY boolean TRUE
NOTA: estas conectado como el usuario sys , pero no tienes el privilegio de sysdba asi que no podras ser dios :p
SQL> shutdown immediate;
ORA-01031: insufficient privileges
SQL> show user
USER is "SYS"
FUENTE:http://arjudba.blogspot.com/2008/05/ora-28009-connection-as-sys-should-be.html
Suscribirse a:
Entradas (Atom)