Una de las grandes novedades en MySQL 5.1 es el destino de los logs, el log general y log de consultas lentas.

Hasta MySQL 5.0.x los logs eran almacenados en archivos planos, pero a partir de la versión 5.1.6 los mismos pueden ser escritos a archivos, a tablas del esquema mysql (general_log y slow_log) o en ambos destinos.

Para las nuevas instalaciones de MySQL 5.1.6 o posterior, en el mismo proceso de instalación se crean las tablas de logs junto al resto de las tablas del sistema. En cambio, si actualizas MySQL desde una versión anterior, deberás actualizar las tablas del sistema con mysql_upgrade.

Si bien disponer de información de logs en tablas, en vez de archivos, puede hacer más fácil su seguimiento, así como el desarrollo de aplicaciones que utilicen esa información, pero también debemos entender y aceptar que esto se llevará parte del rendimiento del motor de base de datos.

(more…)

En esta publicación, veremos el uso de la aplicación de línea de comandos mysqlshow para ver las bases de datos, tablas, columnas e información de índices de una base de datos MySQL mediante nueve ejemplos.

Los parámetros comunes, para cada uno de los ejemplos, serán:

  • -h <host>: localhost, ip o nombre de dominio del servidor.
  • -u <user>: nombre de usuario
  • -p <password>: contraseña.

Para el caso de la contraseña, puedes ingresar la contraseña inmediatamente después del -p (muy util para cuando utilizamos mysqlshow dentro de un script) o bien, solamente -p, donde se nos solicitará luego la contraseña.

En nuestros ejemplo, no especificaremos el host, suponemos que ejecutamos mysqlshow en el mismo servidor. No ingresaremos la constraseña luego del parámetro -p, sino que esperaremos a que nos la solicite.

(more…)

Debian/Ubuntu Tips&Tricks nos sugiere dos tips para mejorar el tiempo de respuesta de MySQL, basado en un caso propio.

Muchas veces, a pesar de que el sistema operativo se encuentre con una carga de trabajo normal, MySQL puede mostrarse algo lento.

Hay muchas formas para mejorar el tiempo de respuesta del servidor MySQL, aquí nos enfocaremos en dos formas:

  • Deshabilitar la resolución de nombre
  • Modificar el tamaño de la cache

(more…)

Según palabras oficiales del director de arquitectura de MySQL, Drizzle será una base de datos basada en gran parte del código de MySQL.

Drizzle se trataría de una base de datos diseñada exclusivamente para aquellas aplicaciones que tengan un patrón de comportamiento como el de las aplicaciones web, como por ejemplo: concurrencia masiva, bases de datos sin lógica de negocios y arquitecturas modernas de múltiples núcleos, entre otras.

El código de Drizzle deriva de MySQL, con la salvedad que se han quitado todas las características superfluas para las características antes mencionadas.

La arquitectura de Drizzle sería del tipo micro-kernel y mucho del código será movido a módulos. Algunas partes de MySQL, seleccionadas para su remoción incluyen vistas, triggers, stored procedures, query cache, ACLs y algunos tipos de datos.

(more…)

El equipo de desarrollo de MySQL publicó un adelanto de sus planes para el lanzamiento para el Release Candidate final de MySQL 5.1.

Michael Widenius, fundador y programador original de MySQL, publica en su blog acerca del lanzamiento de la RC final que seguirá en ese estado por un tiempo, hasta que se anuncie la versión final GA (General Available). De hecho, se puede decir, que la RC no tendrá modificaciones en su código al pasar de RC a GA.

También, hace un llamado a todos aquellos que estén haciendo desarrollo y soporte de MySQL a descargar la última RC y reportar en su sistema de bugs todos los errores que encuentren.

Cabe recordar, que esta nueva versión MySQL incluye novedades como tablas de logs, programador de eventos, particionamiento y un nuevo esquema de replicación.

(more…)

En el sitio oficial de MySQL se puede encontrar una serie de diez preguntas para cuatro niveles de exámenes, que sirven como auto-evaluación para quienes, eventualmente, decidan rendir un examen de certificación de MySQL. Obviamente no son las preguntas del examen sino más bien,  pueden ser utilizadas para dar una idea de lo que se puede ver en un examen de certificación.

(more…)

En esta ocasión veremos un pequeño ejemplo, donde por medio del comando GRANT crearemos dos cuentas de usuario en MySQL y le daremos permisos a las mismas.

El caso a resolver será el siguiente:

  • Crear una nueva base de datos
  • Crear un usuario administrador para esa base de datos que solo se pueda conectar localmente
  • Crear un usuario de consulta para la base de datos que se pueda conectar remotamente

(more…)

¿Quien nunca ha recibido un error en la conexión a MySQL? A continuación, un Top 5 con los errores más comunes, su descripción y sus posibles causas.

  • Can’t connect to MySQL server on.
  • Lost connection to MySQL server during query.
  • Access denied for user.
  • Host NN is not allowed to connect to this MySQL.
  • MySQL server has gone away.

(more…)

Usar SQL para generar SQL

El principio para la creación de cadenas SQL a partir de SQL consiste, básicamente, en recorrer la metadata (information schema) de una base de datos y armar strings sql a partir de la concatenación strings constantes y del nombre de los objetos (nombre de tablas, nombre de campos, nombre de constraints, etc.) de la base de datos.

Las consultas SQL utilizadas pueden variar en cuanto a los nombres de los campos, tablas involucradas u objetos del sistema de acuerdo al sistema de gestión de base de datos utilizado, pero el funcionamiento es el mismo. El único esfuerzo extra a realizar será investigar el diccionario de datos de cada DBMS.

Los ejemplos mencionados en el artículo original, correspoden a consultas de Oracle, en nuestro caso, veremos ejemplos similares para una base de datos MySQL:

(more…)

Imagina la situación de chequear si dos tablas o vistas tienen los mismos datos (en cantidad y valores). En ORACLE, esto no sería mayor inconveniente gracias al operador MINUS. MINUS devuelve aquellas filas que están en un primer ’select’ y no están en un segundo ’select’. Sin embargo ¿como podemos lograr esto con bases de datos SQL Server o MySQL?
(more…)


Búsqueda personalizada

Suscripción

         Add to Google Reader or Homepage

        

         Add to My AOL

         Subscribe in NewsGator Online

         Add to netvibes

         Subscribe in Bloglines

Categorias

Licencia de uso

Usuarios

       web counter