jueves, 26 de mayo de 2011

Mantener una session SSH activa

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

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

Después de esto solo agregamos una línea a nuestro bash :p

#
vi ~/.bashrc

alias 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

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


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;
/

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