Manual de referencia de MySQL 5.0

MySQL 5.0

Manual de referencia de MySQL 5.0

Ésta es una traducción del manual de referencia de MySQL, que puede encontrarse en dev.mysql.com. El manual de referencia original de MySQL está escrito en inglés, y esta traducción no necesariamente está tan actualizada como la versión original. Para cualquier sugerencia sobre la traducción y para señalar errores de cualquier tipo, no dude en dirigirse a [email protected].

Copyright 1997-2006 MySQL AB

Esta documentación NO se distribuye bajo una licencia GPL. El uso de esta documentación está sujeta a los siguientes términos: Puede Usted crear una copia impresa de esta documentación únicamente para su uso personal. La conversión a otros formatos está permitida siempre y cuando el contenido no se vea alterado ni editado de ninguna manera. No está permitida la publicación ni la distribución de esta documentación bajo ninguna forma ni en ningún medio, excepto si distribuye la documentación en una manera similar a la que utiliza MySQL para difundirla (esto es, electrónicamente para ser bajada con el software) o en un CD-ROM o medio similar, siempre y cuando la documentación se difunda junto con el software en el mismo medio. Para cualquier otra utilización, como por ejemplo cualquier difusión de copias escritas, o el uso de esta documentación, en su totalidad o parcialmente, en otra publicación, se debe obtener una autorización escrita previa por parte de un representante autorizado de MySQL AB. MySQL AB se reserva cualquier derecho y todos los derechos sobre esta documentación, aunque no esté aquí expresamente acordado.

Si desea obtener más información o si está interesado en realizar una traducción, diríjase por favor por correo electrónico a .

Resumen

Documento generado el: 07-09-2006


Tabla de contenidos

Prefacio
1. Información general
1.1. Sobre este manual
1.2. Convenciones utilizadas en este manual
1.3. Panorámica de MySQL AB
1.4. Panorámica del sistema de gestión de base de datos MySQL
1.4.1. Historia de MySQL
1.4.2. Las principales características de MySQL
1.4.3. Estabilidad de MySQL
1.4.4. Dimensiones máximas de las tablas MySQL
1.4.5. Conformidad con el efecto 2000
1.5. Mapa de desarrollo de MySQL
1.5.1. El servidor MySQL incrustado (embedded)
1.5.2. Qué hay de nuevo en MySQL 5.0
1.6. Fuentes de información acerca de MySQL
1.6.1. Listas de correo de MySQL
1.6.2. Soporte por IRC (Internet Relay Chat) de la comunidad MySQL
1.6.3. Soporte por parte de la comunidad en los foros de MySQL
1.7. Cumplimiento de los estándares por parte de MySQL
1.7.1. Estándares utilizados por MySQL
1.7.2. Selección de modos SQL
1.7.3. Ejecutar MySQL en modo ANSI
1.7.4. Extensiones MySQL al estándar SQL
1.7.5. Diferencias en MySQL del estándar SQL
1.7.6. Cómo trata MySQL las restricciones (Constraints)
2. Instalar MySQL
2.1. Cuestiones generales sobre la instalación
2.1.1. Sistemas operativos que MySQL soporta
2.1.2. Escoger la distribución MySQL a instalar
2.1.3. Cómo obtener MySQL
2.1.4. Comprobar la integridad de paquetes con sumas de verificación MD5 o
2.1.5. Conformación de la instalación
2.2. Instalación MySQL estándar con una distribución binaria
2.3. Instalar MySQL en Windows
2.3.1. Requisitos de Windows
2.3.2. Elección de un paquete de instalación
2.3.3. Instalación de MySQL con un instalador automático
2.3.4. Usar el asistente de instalación de MySQL
2.3.5. Utilización del asistente de configuración
2.3.6. Instalar MySQL partiendo de un archivo Zip Noinstall
2.3.7. Descomprimir el fichero de instalación
2.3.8. Creación de un fichero de opciones
2.3.9. Seleccionar un tipo de servidor MySQL
2.3.10. Arrancar el servidor la primera vez
2.3.11. Arrancar MySQL desde la raya de comandos de Windows
2.3.12. Arrancar MySQL como un servicio de Windows
2.3.13. Comprobar la instalación de MySQL Installation
2.3.14. Resolución de problemas en la instalación de MySQL bajo Windows
2.3.15. Aumentar la versión de MySQL en Windows
2.3.16. Comparación entre MySQL en Windows y MySQL en Unix
2.4. Instalar MySQL en Linux
2.5. Instalar MySQL en Mac OS X
2.6. Instalar MySQL sobre NetWare
2.7. Instalación de MySQL en otros sistemas similares a Unix
2.8. Instalación de MySQL usando una distribución de código fuente
2.8.1. Panorámica de la instalación de código fuente
2.8.2. Opciones típicas de configure
2.8.3. Instalar desde el árbol de código fuente de desarrollo
2.8.4. Problemas en la compilación de MySQL
2.8.5. Notas sobre MIT-pthreads
2.8.6. Instalar MySQL desde el código fuente en Windows
2.8.7. Compilar los clientes de MySQL en Windows
2.9. Puesta en marcha y comprobación después de la instalación
2.9.1. Pasos a seguir después de la instalación en Windows
2.9.2. Pasos a seguir después de la instalación en Unix
2.9.3. Hacer seguras las cuentas iniciales de MySQL
2.10. Aumentar la versión de MySQL
2.10.1. Aumentar la versión de 4.1 a 5.0
2.10.2. Aumentar la versión de las tablas de privilegios
2.10.3. Copiar bases de datos MySQL a otra máquina
2.11. Bajar la versión de MySQL
2.11.1. Volver a la versión 4.1
2.12. Notas específicas sobre sistemas operativos
2.12.1. Notas sobre Linux
2.12.2. Notas sobre Mac OS X
2.12.3. Notas sobre Solaris
2.12.4. Notas sobre BSD
2.12.5. Notas sobre otros Unix
2.12.6. Notas sobre OS/2
2.13. Notas sobre la instalación de Perl
2.13.1. Instalación de Perl en Unix
2.13.2. Instalar ActiveState Perl en Windows
2.13.3. Problemas en la utilización de la interfaz Perl /
3. Curso (tutorial) de MySQL
3.1. Conectarse al y desconectarse del servidor
3.2. Entrar consultas
3.3. Crear y utilizar una base de datos
3.3.1. Crear y seleccionar una base de datos
3.3.2. Crear una tabla
3.3.3. Cargar datos en una tabla
3.3.4. Extraer información de una tabla
3.4. Obtener información sobre bases de datos y tablas
3.5. Usar mysql en modo batch
3.6. Ejemplos de consultas comunes
3.6.1. El valor máximo de una columna
3.6.2. El registro que tiene el valor máximo de determinada columna
3.6.3. Máximo de columna por grupo
3.6.4. Los registros de un grupo que tienen el máximo valor en alguna columna
3.6.5. Utilización de variables de usuario
3.6.6. Usar claves foráneas (foreign keys)
3.6.7. Buscar usando dos claves
3.6.8. Calcular visitas diarias
3.6.9. Utilización de
3.7. Consultas del proyecto Mellizos (Twin)
3.7.1. Encontrar todos los mellizos no repartidos
3.7.2. Mostrar una tabla de estado de mellizos
3.8. Usar MySQL con Apache
4. Usar los programas MySQL
4.1. Panorámica de programas MySQL
4.2. Invocar programas MySQL
4.3. Especificar opciones de programa
4.3.1. Usar opciones en la raya de comando
4.3.2. Usar ficheros de opciones
4.3.3. Usar variables de entorno para especificar opciones
4.3.4. Utilización de opciones para establecer variables de programa
5. Administración de bases de datos
5.1. El servidor MySQL y scripts de arranque del servidor
5.1.1. Panorámica de los programas scripts y las utilidades del lado del servidor (server-side)
5.1.2. El servidor extendido de MySQL mysqld-max
5.1.3. El script de arranque del servidor mysqld_safe
5.1.4. El script mysql.server para el arranque del servidor
5.1.5. El programa mysqld_multi para gestionar múltiples servidores MySQL
5.2. El gestor de instancias de MySQL
5.2.1. Arrancar el servidor MySQL con el gestor de instancias MySQL
5.2.2. Conexión al gestor de instancias de MySQL y creación de cuentas de usuario
5.2.3. Opciones de los comandos del gestor de instancias MySQL
5.2.4. Ficheros de configuración del gestor de instancias de MySQL
5.2.5. Los comandos que reconoce el gestor de instancias de MySQL
5.3. Configuración del servidor MySQL
5.3.1. Opciones del comando mysqld
5.3.2. El modo SQL del servidor
5.3.3. Variables de sistema del servidor
5.3.4. Variables de estado del servidor
5.4. El proceso de cierre del servidor MySQL
5.5. Cuestiones de seguridad general
5.5.1. Guía de seguridad general
5.5.2. Hacer que MySQL sea seguro contra ataques
5.5.3. Opciones de arranque para mysqld relacionadas con la seguridad
5.5.4. Cuestiones relacionadas con la seguridad y
5.6. El sistema de privilegios de acceso de MySQL
5.6.1. Qué hace el sistema de privilegios
5.6.2. Cómo funciona el sistema de privilegios
5.6.3. Privilegios de los que provee MySQL
5.6.4. Conectarse al servidor MySQL
5.6.5. Control de acceso, nivel 1: Comprobación de la conexión
5.6.6. Control de acceso, nivel 2: comprobación de solicitudes
5.6.7. Cuándo tienen efecto los camios de privilegios
5.6.8. Causas de errores
5.6.9. Hashing de contraseñas en MySQL 4.1
5.7. Gestión de la cuenta de usuario MySQL
5.7.1. Nombres de usuario y contraseñas de MySQL
5.7.2. Añadir nuevas cuentas de usuario a MySQL
5.7.3. Eliminar cuentas de usuario de MySQL
5.7.4. Limitar recursos de cuentas
5.7.5. Asignar contraseñas a cuentas
5.7.6. Guardar una contraseña de forma segura
5.7.7. Usar conexiones seguras
5.8. Prevención de desastres y recuperaciones
5.8.1. Copias de seguridad de bases de datos
5.8.2. Ejemplo de estrategia de copias de seguridad y recuperación
5.8.3. Mantenimiento de tablas y recuperación de un fallo catastrófico (crash)
5.8.4. Organizar un programa de mantenimiento de tablas
5.8.5. Obtener información acerca de una tabla
5.9. Uso internacional y localización de MySQL
5.9.1. El conjunto de caracteres utilizado para datos y ordenación
5.9.2. Escoger el idioma de los mensajes de error
5.9.3. Añadir un conjunto de caracteres nuevo
5.9.4. Los vectores de definición de caracteres
5.9.5. Soporte para colación de cadenas de caracteres
5.9.6. Soporte de caracteres multi-byte
5.9.7. Problemas con conjuntos de caracteres
5.9.8. Soporte de zonas horarias en el servidor MySQL
5.10. Los ficheros de registro (log) de MySQL
5.10.1. El registro de errroes (Error Log)
5.10.2. El registro general de consultas
5.10.3. El registro binario (Binary Log)
5.10.4. El registro de consultas lentas (Slow Query Log)
5.10.5. Mantenimiento de ficheros de registro (log)
5.11. Ejecutar más de un servidor MySQL en la misma máquina
5.11.1. Ejecutar varios servidores en Windows
5.11.2. Ejecutar varios servidores en Unix
5.11.3. Utilización de programas cliente en un entorno de múltiples servidores
5.12. La caché de consultas de MySQL
5.12.1. Cómo opera la caché de consultas
5.12.2. Opciones de para la caché de consultas
5.12.3. Configuración de la caché de consultas
5.12.4. Estado y mantenimiento de la caché de consultas
6. Replicación en MySQL
6.1. Introducción a la replicación
6.2. Panorámica de la implementación de la replicación
6.3. Detalles de la implementación de la replicación
6.3.1. Estados de los subprocesos del maestro de replicación
6.3.2. Estados de proceso E/S (I/O) del esclavo de replicación
6.3.3. Estados del flujo SQL de un esclavo de replicación
6.3.4. Ficheros de replicación, retardados y de estado
6.4. Cómo montar la replicación
6.5. Compatibilidad entre versiones de MySQL con respecto a la replicación
6.6. Aumentar la versión de la replicación
6.6.1. Aumentar la versión de la replicación a 5.0
6.7. Características de la replicación y problemas conocidos
6.8. Opciones de arranque de replicación
6.9. Preguntas y respuestas sobre replicación
6.10. Resolución de problemas de replicación
6.11. Reportar bugs de replicación
7. Optimización de MySQL
7.1. Panorámica sobre optimización
7.1.1. Limitaciones y soluciones de compromiso en el diseño de MySQL
7.1.2. Diseñar aplicaciones pensando en la portabilidad
7.1.3. Para qué hemos usado MySQL
7.1.4. El paquete de pruebas de rendimiento (benchmarks) de MySQL
7.1.5. Usar pruebas de rendimiento (benchmarks) propios
7.2. Optimizar sentencias y otras consultas
7.2.1. Sintaxis de (Obtener información acerca de un )
7.2.2. Estimar el renidimiento de una consulta
7.2.3. Velocidad de las consultas
7.2.4. Optimización de las cláusulas por parte de MySQL
7.2.5. Optimización de rango
7.2.6. Index Merge Optimization
7.2.7. Cómo optimiza MySQL
7.2.8. Cómo MySQL optimiza
7.2.9. Cómo optimiza MySQL los y
7.2.10. Cómo optimiza MySQL
7.2.11. Cómo optimiza MySQL los
7.2.12. Cómo optimiza MySQL las cláusulas
7.2.13. Cómo evitar lecturas completas de tablas
7.2.14. Velocidad de la sentencia
7.2.15. Velocidad de las sentencias
7.2.16. Velocidad de sentencias
7.2.17. Otros consejos sobre optimización
7.3. Temas relacionados con el bloqueo
7.3.1. Métodos de bloqueo
7.3.2. Cuestiones relacionadas con el bloqueo (locking) de tablas
7.4. Optimizar la estructura de una base de datos
7.4.1. Elecciones de diseño
7.4.2. Haga sus datos lo más pequeños posibles
7.4.3. Índices de columna
7.4.4. Índices de múltiples columnas
7.4.5. Cómo utiliza MySQL los índices
7.4.6. La caché de claves de
7.4.7. Cómo cuenta MySQL las tablas abiertas
7.4.8. Cómo abre y cierra tablas MySQL
7.4.9. Desventajas de crear muchas tablas en la misma base de datos
7.5. Optimización del servidor MySQL
7.5.1. Factores de sistema y afinamientos de parámetros de arranque
7.5.2. Afinar parámetros del servidor
7.5.3. Vigilar el rendimiento del optimizador de consultas
7.5.4. Efectos de la compilación y del enlace en la velocidad de MySQL
7.5.5. Cómo utiliza MySQL la memoria
7.5.6. Cómo usa MySQL las DNS
7.6. Cuestiones relacionadas con el disco
7.6.1. Utilizar enlaces simbólicos
8. Programas cliente y utilidades MySQL
8.1. Panorámica de scripts y utilidades del lado del cliente
8.2. myisampack, el generador de tablas comprimidas de sólo lectura de MySQL
8.3. La herramienta intérprete de comandos mysql
8.3.1. Comandos mysql
8.3.2. Ejecutar sentencias SQL desde un fichero de texto
8.3.3. Sugerencias acerca de mysql
8.4. Administrar un servidor MySQL con mysqladmin
8.5. La utilidad mysqlbinlog para registros binarios
8.6. El programa mysqlcheck para mantener y reparar tablas
8.7. El programa de copia de seguridad de base de datos mysqldump
8.8. El programa de copias de seguridad de base de datos mysqlhotcopy
8.9. El programa para importar datos mysqlimport
8.10. Mostrar bases de datos, tablas y columnas con mysqlshow
8.11. perror, explicación de códigos de error
8.12. La utilidad replace de cambio de cadenas de caracteres
9. Estructura de lenguaje
9.1. Valores literales
9.1.1. Cadenas de caracteres
9.1.2. Números
9.1.3. Valores hexadecimales
9.1.4. Valores booleanos
9.1.5. Valores de bits
9.1.6. Valores
9.2. Nombres de bases de datos, tablas, índices, columnas y alias
9.2.1. Cualificadores de los identificadores
9.2.2. Sensibilidad a mayúsuclas y minúsculas de identificadores
9.3. Variables de usuario
9.4. Variables de sistema
9.4.1. Variables estructuradas de sistema
9.5. Sintaxis de comentarios
9.6. Tratamiento de palabras reservadas en MySQL
10. Soporte de conjuntos de caracteres
10.1. Conjuntos de caracteres y colaciones en general
10.2. Conjuntos de caracteres y colaciones en MySQL
10.3. Determinar el conjunto de caracteres y la colación por defecto
10.3.1. Conjunto de caracteres y colación del servidor
10.3.2. Conjuntos de caracteres y colaciones de la base de datos
10.3.3. Conjunto de caracteres y colación de tabla
10.3.4. Conjunto de caracteres y colación de columnas
10.3.5. Ejemplos de asignación de conjunto de caracteres y colación
10.3.6. Conjunto de caracteres y colación de la conexión
10.3.7. Conjunto de caracteres y colación de columnas “carácter
10.3.8. Usar en sentencias SQL
10.3.9. Precedencia de la cláusula
10.3.10. Operador
10.3.11. Casos especiales en los que determinar la colación es complicado
10.3.12. A cada colación un conjunto de caracteres correcto
10.3.13. Un ejemplo del efecto de una colación
10.4. Efectos del soporte de conjuntos de caracteres
10.4.1. Cadenas de caracteres de resultado
10.4.2.
10.4.3.
10.4.4. Sentencias
10.5. Soporte Unicode
10.6. UTF8 para metadatos
10.7. Compatibilidad con otros SGBDs (Sistemas gestores de bases de datos)
10.8. Formato del nuevo fichero de conjunto de caracateres
10.9. Conjunto de caracteres nacional
10.10. Conjuntos de caracteres y colaciones que soporta MySQL
10.10.1. Conjuntos de caracteres Unicode
10.10.2. Conjuntos de caracteres de Europa occidental
10.10.3. Conjuntos de caracteres de Europa central
10.10.4. Conjuntos de caracteres del sur de Europa y de Oriente Medio
10.10.5. Conjuntos de caracteres bálticos
10.10.6. Conjuntos de caracteres cirílicos
10.10.7. Conjuntos de caracteres asiáticos
11. Tipos de columna
11.1. Panorámica de tipos de columna
11.1.1. Panorámica de tipos numéricos
11.1.2. Panorámica de tipos de fechas y hora
11.1.3. Panorámica de tipos de cadenas de caracteres
11.2. Tipos numéricos
11.3. Tipos de fecha y hora
11.3.1. Los tipos de datos , y
11.3.2. El tipo
11.3.3. El tipo de datos
11.3.4. Efecto 2000 (Y2K) y tipos de datos
11.4. Tipos de cadenas de caracteres
11.4.1. Los tipos y
11.4.2. Los tipos y
11.4.3. Los tipos y
11.4.4. El tipo de columna
11.4.5. El tipo
11.5. Requisitos de almacenamiento según el tipo de columna
11.6. Escoger el tipo de columna correcto
11.7. Usar tipos de columnas de otros motores de bases de datos
12. Funciones y operadores
12.1. Operadores
12.1.1. Precedencias de los operadores
12.1.2. Paréntesis
12.1.3. Funciones y operadores de comparación
12.1.4. Operadores lógicos
12.2. Funciones de control de flujo
12.3. Funciones para cadenas de caracetres
12.3.1. Funciones de comparación de cadenas de caracteres
12.4. Funciones numéricas
12.4.1. Operadores aritméticos
12.4.2. Funciones matemáticas
12.5. Funciones de fecha y hora
12.6. Qué calendario utiliza MySQL
12.7. Funciones de búsqueda de texto completo (Full-Text)
12.7.1. Búsquedas booleanas de texto completo (Full-Text)
12.7.2. Búsquedas de texto completo (Full-Text) con expansión de consulta
12.7.3. Limitaciones de las búsquedas de texto completo (Full-Text)
12.7.4. Afinar búsquedas de texto completo (Full-Text) con MySQL
12.7.5. Cosas por hacer en búsquedas de texto completo (Full-Text)
12.8. Funciones y operadores de cast
12.9. Otras funciones
12.9.1. Funciones bit
12.9.2. Funciones de encriptación
12.9.3. Funciones de información
12.9.4. Funciones varias
12.10. Funciones y modificadores para cláusulas
12.10.1. Funciones (de agregación) de
12.10.2. Modificadores de
12.10.3. con campos escondidos
13. Sintaxis de sentencias SQL
13.1. Sentencias de definición de datos (Data Definition Statements)
13.1.1. Sintaxis de
13.1.2. Sintaxis de
13.1.3. Sintaxis de
13.1.4. Sintaxis de
13.1.5. Sintaxis de
13.1.6. Sintaxis de
13.1.7. Sintaxis de
13.1.8. Sintaxis de
13.1.9. Sintaxis de
13.2. Sentencias de manipulación de datos (Data Manipulation Statements)
13.2.1. Sintaxis de
13.2.2. Sintaxis de
13.2.3. Sintaxis de
13.2.4. Sintaxis de
13.2.5. Sintaxis de
13.2.6. Sintaxis de
13.2.7. Sintaxis de
13.2.8. Sintaxis de subconsultas
13.2.9. Sintaxis de
13.2.10. Sintaxis de
13.3. Sentencias útiles de MySQL
13.3.1. Sintaxis de (Información acerca de las columnas)
13.3.2. Sintaxis de
13.4. Comandos transaccionales y de bloqueo de MySQL
13.4.1. Sintaxis de , y
13.4.2. Sentencias que no se pueden deshacer
13.4.3. Sentencias que causan una ejecución (commit) implícita
13.4.4. Sintaxis de y
13.4.5. Sintaxis de y
13.4.6. Sintaxis de
13.5. Sentencias de administración de base de datos
13.5.1. Sentencias para la gestión de cuentas
13.5.2. Sentencias para el mantenimiento de tablas
13.5.3. Sintaxis de
13.5.4. Sintaxis de
13.5.5. Otras sentencias para la administración
13.6. Sentencias de replicación
13.6.1. Sentencias SQL para el control de servidores maestros
13.6.2. Sentencias SQL para el control de servidores esclavos
13.7. Sintaxis SQL de sentencias preparadas
14. Motores de almacenamiento de MySQL y tipos de tablas
14.1. El motor de almacenamiento
14.1.1. Opciones de arranque de
14.1.2. Cuánto espacio necesitan las claves
14.1.3. Formatos de almacenamiento de tablas
14.1.4. Problemas en tablas
14.2. El motor de almacenamiento
14.2.1. Problemas con tablas
14.3. El motor de almacenamiento ()
14.4. El motor de almacenamiento ()
14.4.1. Sistemas operativos que soporta
14.4.2. Instalación de
14.4.3. Opciones de arranque de
14.4.4. Características de las tablas
14.4.5. Temas pendientes de arreglo para
14.4.6. Limitaciones en las tablas
14.4.7. Errores que pueden darse en el uso de tablas
14.5. El motor de almacenamiento
14.6. El motor de almacenamiento
14.6.1. Instalación del motor de almacenamiento
14.6.2. Descripción del motor de almacenamiento
14.6.3. Cómo usar las tablas
14.6.4. Limitaciones del motor de almacenamiento
14.7. El motor de almacenamiento
14.8. El motor de almacenamiento
15. El motor de almacenamiento
15.1. Panorámica de
15.2. Información de contacto de
15.3. Configuración de
15.4. Opciones de arranque de
15.5. Crear el espacio de tablas
15.5.1. Resolución de problemas en la inicialización de
15.6. Crear tablas
15.6.1. Cómo utilizar transacciones en con distintas APIs
15.6.2. Pasar tablas a
15.6.3. Cómo funciona una columna en
15.6.4. Restricciones (constraints)
15.6.5. y replicación MySQL
15.6.6. Usar un espacio de tablas para cada tabla
15.7. Añadir y suprimir registros y ficheros de datos
15.8. Hacer una copia de seguridad y recuperar una base de datos
15.8.1. Forzar una recuperación
15.8.2. Marcadores
15.9. Trasladar una base de datos a otra máquina
15.10. Bloqueo y modelo de transacciones de
15.10.1. Modos de bloqueo
15.10.2. y
15.10.3. y
15.10.4. Lecturas consistentes que no bloquean
15.10.5. Bloquear lecturas y
15.10.6. Bloqueo de la próxima clave (Next-Key Locking): evitar el problema fantasma
15.10.7. Un ejemplo de lectura consistente en
15.10.8. Establecimiento de bloqueos con diferentes sentencias SQL en
15.10.9. ¿Cuándo ejecuta o deshace implicitamente MySQL una transacción?
15.10.10. Detección de interbloqueos (deadlocks) y cancelación de transacciones (rollbacks)
15.10.11. Cómo tratar con interbloqueos
15.11. Consejos de afinamiento del rendimiento de
15.11.1. y los monitores
15.12. Implementación de multiversión
15.13. Estructuras de tabla y de índice
15.13.1. Estructura física de un índice
15.13.2. Búfer de inserts
15.13.3. Adaptive Hash Indexes
15.13.4. Estructura física de los registros
15.14. Gestión de espacio de ficheros y de E/S de disco (Disk I/O)
15.14.1. E/S de disco (Disk I/O)
15.14.2. Usar dispositivos en bruto (raw devices) para espacios de tablas
15.14.3. Gestión del espacio de ficheros
15.14.4. Desfragmentar una tabla
15.15. Tratamiento de errores de InnoDB
15.15.1. Códigos de error de
15.15.2. Códigos de error del sistema oeprativo
15.16. Restricciones de las tablas
15.17. Resolver problemas relacionados con
15.17.1. Resolver problemas de las operaciones del diccionario de datos de
16. MySQL Cluster
16.1. Panorámica de MySQL Cluster
16.2. Conceptos básicos de Basic MySQL Cluster
16.3. Cómo configurar varios ordenadores
16.3.1. Hardware, software y redes
16.3.2. Instalación
16.3.3. Configuración
16.3.4. Arranque inicial
16.3.5. Cargar datos de ejemplo y realizar consultas
16.3.6. Apagado y encendido seguros
16.4. Configuración de MySQL Cluster
16.4.1. Generar MySQL Cluster desde el código fuente
16.4.2. Instalar el software
16.4.3. Rápido montaje de prueba de MySQL Cluster
16.4.4. Fichero de configuración
16.5. Gestión de procesos en MySQL Cluster
16.5.1. El uso del proceso del servidor MySQL para MySQL Cluster
16.5.2. ndbd, el proceso del nodo de motor de almacenamiento
16.5.3. El proceso del servidor de administración ndb_mgmd
16.5.4. El proceso de cliente de administración ndb_mgm
16.5.5. Opciones de comando para procesos de MySQL Cluster
16.6. Administración de MySQL Cluster
16.6.1. Comandos del cliente de administración
16.6.2. Informes de eventos generados por MySQL Cluster
16.6.3. Modo de usuario único
16.6.4. Copias de seguridad On-line para MySQL Cluster
16.7. Usar interconexiones de alta velocidad con MySQL Cluster
16.7.1. Configurar MySQL Cluster para que utilice Sockets SCI
16.7.2. Entender el impacto de interconexiones de nodos
16.8. Limitaciones conocidas de MySQL Cluster
16.9. Mapa de desarrollo de MySQL Cluster
16.9.1. Cambios de MySQL Cluster en MySQL 5.0
16.9.2. Mapa de desarrollo de MySQL 5.1 para MySQL Cluster
16.10. Preguntas frecuentes sobre MySQL Cluster
16.11. Glosario de MySQL Cluster
17. Introducción a MaxDB
17.1. Historia de MaxDB
17.2. Licenciamiento y soporte
17.3. Enlaces relacionados con MaxDB
17.4. Conceptos básicos de MaxDB
17.5. Diferencias de prestaciones entre MaxDB y MySQL
17.6. Características de interoperabilidad entre MaxDB y MySQL
17.7. Palabras reservadas de MaxDB
18. Extensiones espaciales de MySQL
18.1. Introducción
18.2. El modelo geométrico OpenGIS
18.2.1. La jerarquía de las clases geométricas
18.2.2. La clase
18.2.3. La clase
18.2.4. La clase
18.2.5. La clase
18.2.6. La clase
18.2.7. La clase
18.2.8. La clase
18.2.9. La clase
18.2.10. La clase
18.2.11. La clase
18.2.12. La clase
18.2.13. La clase
18.3. Formatos de datos espaciales soportados
18.3.1. Formato Well-Known Text (WKT)
18.3.2. Formato Well-Known Binary (WKB)
18.4. Crear una base de datos MySQL con capacidades espaciales
18.4.1. Tipos de datos espaciales de MySQL
18.4.2. Crear valores espaciales
18.4.3. Crear columnas espaciales
18.4.4. Poblar columnas espaciales
18.4.5. Extraer datos espaciales
18.5. Analizar información espacial
18.5.1. Funciones de conversión de formato geométrico
18.5.2. Funciones
18.5.3. Funciones que crean nuevas geometrías a partir de unas existentes
18.5.4. Funciones para probar relaciones espaciales entre objetos geométricos
18.5.5. Relaciones entre rectángulos MBR (Minimal Bounding Rectangles)
18.5.6. Funciones que prueban relaciones espaciales entre geometrías
18.6. Optimización del análisis espacial
18.6.1. Crear índices espaciales
18.6.2. Usar un índice espacial
18.7. Conformidad y compatibilidad de MySQL
18.7.1. Características GIS que todavía no han sido implementadas
19. Procedimientos almacenados y funciones
19.1. Procedimientos almacenados y las tablas de permisos
19.2. Sintaxis de procedimientos almacenados
19.2.1. y
19.2.2. y
19.2.3. y
19.2.4. y
19.2.5. y
19.2.6. La sentencia
19.2.7. Sentencia compuesta
19.2.8. Sentencia
19.2.9. Variables en procedimientos almacenados
19.2.10. Conditions and Handlers
19.2.11. Cursores
19.2.12. Constructores de control de flujo
19.3. Registro binario de procedimientos almacenados y disparadores
20. Disparadores (triggers)
20.1. Sintaxis de
20.2. Sintaxis de
20.3. Utilización de disparadores
21. Vistas (Views)
21.1. Sintaxis de
21.2. Sintaxis de
21.3. Sintaxis de
21.4. Sintaxis de
22. La base de datos de información
22.1. Las tablas
22.1.1. La tabla
22.1.2. La tabla
22.1.3. La tabla
22.1.4. La tabla
22.1.5. La tabla
22.1.6. La tabla
22.1.7. La tabla
22.1.8. La tabla
22.1.9. La tabla
22.1.10. La tabla
22.1.11. La tabla
22.1.12. La tabla
22.1.13. La tabla
22.1.14. La tabla
22.1.15. La tabla
22.1.16. La tabla
22.1.17. Otras tablas
22.2. Extensiones a las sentencias
23. Matemáticas de precisión
23.1. Tipos de valores numéricos
23.2. Cambios en el tipo de datos
23.3. Manejo de expresiones
23.4. Cómo se redondea
23.5. Ejemplos de matemáticas de precisión
24. APIs de MySQL
24.1. msql2mysql —
24.2. mysql_config —
24.3. La API C de MySQL
24.3.1. Tipos de datos de la API C
24.3.2. Panorámica de funciones de la API C
24.3.3. Descripción de funciones de la API C
24.3.4. Sentencias preparadas de la API C
24.3.5. Tipos de datos de sentencias preparadas de la API C
24.3.6. Panorámica de las funciones de sentencias preparadas de la API C
24.3.7. Descripciones de funciones de sentencias preparadas de la API C
24.3.8. Problemas con sentencias preparadas de la API C
24.3.9. Tratamiento por parte de la API C de la ejecución de múltiples consultas
24.3.10. Manejo de valores de fecha y hora por parte de la API C
24.3.11. Descripción de funciones de la API C para el control de subprocesos
24.3.12. Descripción de las funciones de la API C del servidor incrustado (embedded)
24.3.13. Preguntas y problemas comunes en el uso de la API C
24.3.14. Generar programas cliente
24.3.15. Cómo hacer un cliente multihilo
24.3.16. libmysqld, la biblioteca del servidor MySQL incrustado (embedded)
24.4. API PHP de MySQL
24.4.1. Problemas comunes con MySQL y PHP
24.5. La API Perl de MySQL
24.6. API C++ de MySQL
24.6.1. Borland C++
24.7. La API Python de MySQL
24.8. La API Tcl de MySQL
24.9. El visor de MySQL Eiffel
25. Conectores MySQL
25.1. El conector ODBC de MySQL
25.1.1. Introducción a MyODBC
25.1.2. Información general sobre ODBC y MyODBC
25.1.3. Cómo instalar MyODBC
25.1.4. Instalar MyODBC en Windows desde una distribución binaria
25.1.5. Instalación de MyODBC en Unix partiendo de una distribución binaria
25.1.6. Instalar MyODBC de una distribución de código fuente en Windows
25.1.7. Instalar MyODBC de una distribución de código fuente en Unix
25.1.8. Instalar MyODBC del árbol de código de desarrollo de BitKeeper
25.1.9. Configuración de MyODBC
25.1.10. Cuestiones relacionadas con la conexión en MyODBC
25.1.11. MyODBC y Microsoft Access
25.1.12. MyODBC, Microsoft VBA y ASP
25.1.13. MyODBC y herramientas ODBC de terceras partes
25.1.14. Funcionalidad general de MyODBC
25.1.15. Pasos básicos a seguir con aplicaciones MyODBC
25.1.16. Referencia de la API de MyODBC
25.1.17. Tipos de datos MyODBC
25.1.18. Códigos de error de MyODBC
25.1.19. MyODBC con VB: ADO, DAO y RDO
25.1.20. MyODBC con Microsoft .NET
25.1.21. Credits
25.2. MySQL Connector/NET
25.2.1. Introduction
25.2.2. Downloading and Installing MySQL Connector/NET
25.2.3. Connector/NET Architecture
25.2.4. Using MySQL Connector/NET
25.2.5. MySQL Connector/NET Change History
25.3. MySQL Connector/J
25.3.1. Conceptos básicos de JDBC
25.3.2. Instalación del Connector/J
25.3.3. Referencia JDBC
25.3.4. Usando Connector/J con J2EE y otros Java Frameworks
25.3.5. Diagnóstico de problemas de Connector/J
25.3.6. Changelog
25.4. MySQL Connector/MXJ
25.4.1. Introduction
25.4.2. Support Platforms:
25.4.3. JUnit Test Requirements
25.4.4. Running the JUnit Tests
25.4.5. Running as part of the JDBC Driver
25.4.6. Running within a Java Object
25.4.7. The MysqldResource API
25.4.8. Running within a JMX Agent (custom)
25.4.9. Deployment in a standard JMX Agent environment (JBoss)
25.4.10. Installation
26. Manejo de errores en MySQL
27. Extender MySQL
27.1. El interior de MySQL
27.1.1. Los subprocesos (threads) MySQL
27.1.2. El paquete de pruebas MySQL Test
27.2. Añadir nuevas funciones a MySQL
27.2.1. Características de la interfaz para funciones definidas por el usuario
27.2.2. Sintaxis de
27.2.3. Añadir una nueva función definida por el usuario
27.2.4. Añadir una nueva función nativa
27.3. Añadir nuevos procedimientos a MySQL
27.3.1. Procedimiento Analyse
27.3.2. Escribir un procedimiento
A. Problemas y errores comunes
A.1. Cómo determinar a qué es debido un problema
A.2. Errores comunes al usar programas MySQL
A.2.1.
A.2.2.
A.2.3.
A.2.4. La contraseña falla cuando se introduce interactivamente
A.2.5. ' is blocked
A.2.6.
A.2.7.
A.2.8.
A.2.9.
A.2.10. Errores de comunicación y conexiones abortadas
A.2.11.
A.2.12.
A.2.13.
A.2.14.
A.2.15. ' doesn't exist
A.2.16.
A.2.17. No se encontró el fichero
A.3. Problemas relacionados con la instalación
A.3.1. Problemas al enlazar a la biblioteca de clientes MySQL
A.3.2. Cómo correr MySQL como usuario normal
A.3.3. Problemas con permisos de ficheros
A.4. Cuestiones relacionadas con la administración
A.4.1. Cómo reiniciar la contraseña de root
A.4.2. Qué hacer si MySQL sigue fallando (crashing)
A.4.3. Cómo se comporta MySQL ante un disco lleno
A.4.4. Dónde almacena MySQL los archivos temporales
A.4.5. Cómo proteger o cambiar el fichero socket de MySQL
A.4.6. Problemas con las franjas horarias
A.5. Problemas relacionados con consultas
A.5.1. Sensibilidad a mayúsculas en búsquedas
A.5.2. Problemas en el uso de columnas
A.5.3. Problemas con valores
A.5.4. Problemas con alias de columnas
A.5.5. Fallo en la cancelación de una transacción con tablas no transaccionales
A.5.6. Borrar registros de tablas relacionadas
A.5.7. Resolver problemas con registros que no salen
A.5.8. Problemas con comparaciones en Floating-Point
A.6. Cuestiones relacionadas con el optimizados
A.7. Cuestiones relacionadas con definiciones de tabla
A.7.1. Problemas con
A.7.2. Cómo cambiar el orden de las columnas en una tabla
A.7.3. Problemas con
A.8. Problemas conocidos en MySQL
A.8.1. Problemas de la versión 3.23 resueltos en una versión posterior de MySQL
A.8.2. Problemas de la versión 4.0 resueltos en una versión posterior de MySQL
A.8.3. Problemas de la versión 4.1 resueltos en una versión posterior de MySQL
A.8.4. Cuestiones abiertas en MySQL
B. Credits
B.1. Desarrolladores de MySQL AB
B.2. Han contribuido a crear MySQL
B.3. Documentadores y traductores
B.4. Bibliotecas incluidas en MySQL y que MySQL utiliza
B.5. Paquetes que soportan MySQL
B.6. Herramientas utilizadas en la creación de MySQL
B.7. Han ayudado a MySQL
C. Historial de cambios de MySQL
C.1. Cambios en la entrega 5.0.x (Desarrollo)
C.1.1. Cambios en la entrega 5.0.11 (todavía no liberada)
C.1.2. Cambios en la entrega 5.0.10 (todavía no liberada)
C.1.3. Cambios en la entrega 5.0.9 (15 julio 2005)
C.1.4. Cambios en la entrega 5.0.8 (not released)
C.1.5. Cambios en la entrega 5.0.7 (10 June 2005)
C.1.6. Cambios en la entrega 5.0.6 (26 May 2005)
C.1.7. Cambios en la entrega 5.0.5 (not released)
C.1.8. Cambios en la entrega 5.0.4 (16 Apr 2005)
C.1.9. Cambios en la entrega 5.0.3 (23 Mar 2005: Beta)
C.1.10. Cambios en la entrega 5.0.2 (01 Dec 2004)
C.1.11. Cambios en la entrega 5.0.1 (27 Jul 2004)
C.1.12. Cambios en la entrega 5.0.0 (22 Dec 2003: Alpha)
C.2. Cambios en MyODBC
C.2.1. Cambios en MyODBC 3.51.12
C.2.2. Cambios en MyODBC 3.51.11
D. Portar a otros sistemas
D.1. Depurar un servidor MySQL
D.1.1. Compilación de MySQL para depuración
D.1.2. Crear ficheros de traza
D.1.3. Depurar mysqld con gdb
D.1.4. Usar stack trace
D.1.5. El uso de registros (logs) para encontrar la causa de errores de mysqld
D.1.6. Crear un caso de prueba tras haber encontrado una tabla corrupta
D.2. Depuración de un cliente MySQL
D.3. El paquete DBUG
D.4. Comentarios sobre subprocesos RTS
D.5. Diferencias entre paquetes de control de subprocesos
E. Variables de entorno
F. Expresiones regulares en MySQL
G. Límites en MySQL
G.1. Límites de los joins
H. Restricciones en características de MySQL
H.1. Restricciones en procedimientos almacenados y disparadores
H.2. Restricciones en cursores el lado del servidor
H.3. Restricciones en subconsultas
H.4. Restricciones en vistas
I. GNU General Public License
J. MySQL FLOSS License Exception