miércoles, 5 de febrero de 2014

Comandos de Mysql

Hoy vamos a hablar acerca de los comandos mas usados en MySQL, su sintaxis y daremos algunos ejemplos.

Comenzaremos con el comando SHOW el cual nos permite ver cuales son las tablas, bases de datos, permisos, motores de almacenamiento, entre otros disponibles en nuestro servidor MySQL.

Después de acceder de manera normal en su servidor Mysql, si desea saber que bases de datos hay disponibles debe usar el comando SHOW DATABASES como se muestra a continuación:
mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| zerocool           |
+--------------------+
4 rows in set (0.00 sec)
Para poder utilizar alguna de esas bases de datos que se nos presentan necesitamos el comando USE Nombre_de_base_de_datos. En el ejemplo siguiente mostraré como  trabajar con la base de datos MySQL:
mysql> USE mysql;
Database changed
Una vez en la base de datos podemos ver que tablas contiene usando SHOW TABLES:
mysql> SHOW TABLES;
+---------------------------+
| Tables_in_mysql           |
+---------------------------+
| columns_priv              |
| db                        |
| event                     |
| func                      |
| general_log               |
| help_category             |
| help_keyword              |
| help_relation             |
| help_topic                |
| host                      |
| ndb_binlog_index          |
| plugin                    |
| proc                      |
| procs_priv                |
| proxies_priv              |
| servers                   |
| slow_log                  |
| tables_priv               |
| time_zone                 |
| time_zone_leap_second     |
| time_zone_name            |
| time_zone_transition      |
| time_zone_transition_type |
| user                      |
+---------------------------+
24 rows in set (0.00 sec)

viernes, 31 de enero de 2014

Instalación y configuración de NGINX

Instalación


En Debian es recomendable usar los repositorios dotdeb  ya que contiene las versiones pre compiladas actualizadas del Nginx.Para hacer esto coloca en /etc/apt/sources.list el repositorio: packages.dotdeb.org,  bajar su llave pública de la dirección: http://www.dotdeb.org/dotdeb.gpg y agregarla al llavero de Debian.
echo "deb http://packages.dotdeb.org squeeze all" >> /etc/apt/sources.list"
wget  http://www.dotdeb.org/dotdeb.gpg
apt-key add dotdeb.gpg
apt-get update 
Luego se descarga el Nginx de manera normal con apt-get:
apt-get install nginx

En FreeBSD basta con usar pkg_add -vvv nginx (en FreeBSD 10 en adelante se usa pkg install nginx). También puede instalarlo con make install clean  desde /usr/ports/www/nginx (siempre y cuando tenga bien configurado el árbol de puertos). Nginx viene instalado por defecto en OpenBSD a partir de la versión 5.2.

Configuración


Una vez instalado Nginx encontraremos los archivos de configuración en el directorio /etc/nginx.

Para los que vienen de apache notaran que en Debian se mantiene el uso de la carpeta sites-available y sites-enabled (localizadas en /etc/nginx/). Los que no han trabajado con esta modalidad en la primera carpeta se encuentran los archivos de configuración de los sitios web “disponibles” y en la segunda un enlace simbólico a los sitios que están en sites-available que el administrador (osea ustedes) desea que sean servidos por Nginx.

A continuación coloco el /etc/nginx/nginx.conf editado por mí con sus respectivas explicaciones:
user www-data;
worker_processes 4;
pid /var/run/nginx.pid;

events {
    worker_connections 768;
}

http {
  sendfile on;
  tcp_nopush on;
  tcp_nodelay on;
  types_hash_max_size 2048;
  server_tokens off;
  include /etc/nginx/mime.types;
  default_type application/octet-stream;
  access_log /var/log/nginx/access.log;
  error_log /var/log/nginx/error.log;
  gzip on;
  gzip_disable "msie6";
  gzip_vary on;
  gzip_types text/plain text/css application/x-javascript application/xml
  application/json image/png image/gif image/jpeg image/jpg;
  gzip_comp_level 6;
  gzip_buffers 16 8k;
  client_body_in_single_buffer on;
  client_body_buffer_size  1K;
  client_header_buffer_size 1k;
  client_max_body_size 1k;
  large_client_header_buffers 2 1k;
  client_body_timeout   10;
  client_header_timeout 10;
  keepalive_timeout     30;
  send_timeout          10;
  include /etc/nginx/conf.d/*.conf;
  include /etc/nginx/sites-enabled/*;
}