viernes, 16 de marzo de 2012

SQL SERVER 2008 | STORE | ERROR | Ad Hoc Distributed Queries

Como gestor de base de datos por restricciones de usuario estoy utilizando:
  
--------------------------------------------------------------------------
Microsoft SQL Server Management Studio      10.50.1617.0
Microsoft Data Access Components (MDAC)      6.1.7601.17514
Microsoft MSXML      3.0 4.0 6.0 
Microsoft Internet Explorer      9.0.8112.16421
Microsoft .NET Framework      2.0.50727.5448
Sistema operativo      6.1.7601
--------------------------------------------------------------------------

 ¿Y esto que?
 Pues por la necesidad de crear y ejecutar un store procedure, al ejecutarlo
la respuesta es:

Mens. 15281, Nivel 16, Estado 1, Línea 1
SQL Server bloqueó el acceso a STATEMENT 'OpenRowset/OpenDatasource' del componente
'Ad Hoc Distributed Queries' porque este componente está desactivado como parte de 
la configuración de seguridad de este servidor. Un administrador del sistema puede 
habilitar el uso de 'Ad Hoc Distributed Queries' mediante sp_configure. Para obtener 
más información acerca de cómo habilitar 'Ad Hoc Distributed Queries', vea el tema 
sobre la configuración de área expuesta en los Libros en pantalla de SQL Server.


 ¿Qué hacer ante esto?
 Hay que habilitar 'Ad Hoc Distributed Queries', para hacer esto hay que ejecutar
 el siguiente <a href="http://es.wikipedia.org/wiki/Snippet">snippet</a> en la ventana de consultas del Management Studio:
 
sp_configure 'show advanced options',1
reconfigure with override
go
sp_configure 'Ad Hoc Distributed Queries',1
reconfigure with override
go

 ¿Que da como resultado?(adjunto imagen)

Se ha cambiado la opción de configuración 'show advanced options' de 0 a 1. Ejecute la instrucción RECONFIGURE para instalar.
Se ha cambiado la opción de configuración 'Ad Hoc Distributed Queries' de 0 a 1. Ejecute la instrucción RECONFIGURE para instalar.
Fuente y lo que hay que saber: <a href="http://www.guillesql.es/Articulos/SQLServerFAQ_Servidor_Vinculado_OPENQUERY_Notacion_4_Partes.aspx">guillesql</a>

martes, 6 de marzo de 2012

Instalar TOMCAT, JDK bajo CentOS para un ambiente de producción

¿Qué es lo que necesitamos para instalar un ambiente de producción
en CentOS?
1. instalar el jdk.
2. instalar apache-tomcat como servicio.

A continuación describo los pasos que he seguido para hacer un
ambiente de producción en CentOS.



 ------------------------------
| MANUAL DE INSTALACIÓN DE JDK |
 ------------------------------
-------------------------------------
Todo esto se hace desde la sesión con
la que estemos loggeados; a excepción
de que se indique lo contrario.
-------------------------------------

1. Descargar JDK desde:
<a href="http://www.oracle.com/technetwork/java/javase/downloads/jdk-6u30-download-1377139.html">jdk</a>

UBICADOS EN LA CARPETA DONDE SE DESCARGO EL JDK:
2. Damos permisos
chmod +x jdk-6u30-linux-i586.bin

3. Ejecutamos
./jdk-6u30-linux-i586.bin

4. Nos logeamos comom Super Usuario
su
*******

5. Movemos la carpeta
mv jdk1.6.0_30/ /usr/local (PUEDE SER LA CARPETA QUE DEFINAMOS)
exit(PARA SALIR COMO ROOT)

6. seteamos alternativas de JAVA
(HAY OTRAS MANERAS DE HACER ESTO CON UN jdk-6u30-linux-i586.rpm.bin
Y NOS QUITAMOS DE -PEDOS- PROBLEMAS)
update-alternatives --install "/usr/bin/java"  "java" "/usr/local/jdk1.6.0_30/bin/java" 1
update-alternatives --set java /usr/local/jdk1.6.0_30/bin/java
update-alternatives --install "/usr/bin/javac"  "javac"  "/usr/local/jdk1.6.0_30/bin/javac" 1
update-alternatives --set javac /usr/local/jdk1.6.0_30/bin/javac


7. Desde una consola, verificamos que ya tenemos instalado y setteado el java
java -version
javac -version

8. Añadimos la fuente *.Arial a la ubicación
(De cualquier máquina con Windows las pueden obtener)
/usr/local/jdk1.6.0_27/jre/lib/fonts/
(POR LA NATURALEZA DE ALGÚN PROYECTO TUVE LA NECESIDAD DE COPIAR Y USAR ESTAS FUENTES)

 ---------------------------------
| MANUAL DE INSTALACIÓN DE TOMCAT |
 ---------------------------------

1. Descargar el tomcat desde:
<a href="http://tomcat.apache.org/">tomcat</a>

2. Nos logeamos como Super Usuario
su
*******

3. Descomprimir archivo
tar -xvf apache-tomcat.tar.gz

UBICADOS EN LA CARPETA DONDE SE DESCOMPRIMIO EL TOMCAT:
4. Aplicamos un chmod a la carpeta:
chmod 775 -R apache-tomcat/

5. Movemos la carpeta del apache (PUEDE SER LA CARPETA QUE DEFINAMOS)
mv apache-tomcat /usr/share/

6. Iniciamos el servidor
/usr/share/apache-tomcat/bin/./startup.sh
exit(PARA SALIR COMO ROOT)

7. Verificamos que este corriendo el servidor, desde un navegador web
http://localhost:8080/manager/html


 ----------------------------------------
| HACIENDO TOMCAT UN SERVICIO DEL CENTOS |
 ----------------------------------------
1. Loggeados como root creamos un archivo de nombre tomcat
2. El contenido de ese archivo es el siguiente script
(NOTA: copiar el script a un editor de texto plano(notepad++),
para evitar que se pierda su estructura):

#!/bin/bash
#
# tomcat Tomcat Java Server
#
# chkconfig: 2345 55 25
# description: Servidor de Aplicaciones Tomcat
# processname: tomcat

JAVA_HOME=/usr/local/jdk1.6.0_30/
export JAVA_HOME
TOMCAT_HOME=/usr/share/apache-tomcat/bin
START_TOMCAT=$TOMCAT_HOME/startup.sh
STOP_TOMCAT=$TOMCAT_HOME/shutdown.sh

# source function library
. /etc/rc.d/init.d/functions

[ -f $START_TOMCAT ] || exit 0
[ -f $STOP_TOMCAT ] || exit 0

RETVAL=0

umask 077

start() {
echo -n $"Iniciando Tomcat Java Server"
echo
daemon $START_TOMCAT
echo
return $RETVAL
}
stop() {
echo -n $"Deteniendo Tomcat Java Server"
echo
daemon $STOP_TOMCAT
echo
return $RETVAL
}
restart() {
stop
start
}
case "$1" in
   start)
start
;;
   stop)
stop
;;
   restart|reload)
restart
;;
#  *)
# echo
# exit 1
esac
exit $RETVAL



3. Movemos el archivo creado a:
/etc/init.d

4. Aplicamos un chmod 755 al archivo tomcat:
chmod 755 tomcat

5. Agregamos el servicio al centos:
chkconfig --add tomcat

6. Verificamos que el servicio ya esta agregado con:
chkconfig --list

7. Verificamos el runlevel, para activar el respectivo para el servicio del tomcat
cat /etc/inittab

8. Activamos el runlevel:
chkconfig --level 5 tomcat on

9. Hacemos que el servicio arranque en cada inicio/reinicio de máquina:
chkconfig tomcat on

10. Iniciamos el servicio:
service tomcat start

11. Ubicados en /usr/share modificamos los permisos como root:
chmod 755 -R apache-tomcat/ (ESTO ES POR SI AÚN NO TIENE LOS PERMISOS)
cd apache-tomcat/
chmod 775 logs/
(ESTO ES PARA PODER VER LOS LOGS, SIN IMPORTAR QUE USUARIO SEA, DESDE LA MÁQUINA DE CENTOS)

12. Reiniciamos el equipo para comprobar que el servicio ya levanta al arranque.



---------------------------------------------------
COMANDOS DE UTILIDAD(man xxxx(desde la consola)):
---------------------------------------------------

chown - change file owner and group
chmod - change file mode bits
chkconfig - updates and queries runlevel information for system services
service - run a System V init script