El servidor mantiene varias variables de sistema que indican
        cómo está configurado. Todas ellas tienen valores por defecto.
        Pueden cambiarse al arrancar el servidor usando opciones en la
        línea de comandos o en ficheros de opciones. La mayoría de
        ellos pueden cambiarse en tiempo de ejecución usando el comando
        SET.
      
El servidor mysqld mantiene dos clases de variables. Las variables globales afectan las operaciones globales del servidor. Las variables de sesión afectan las operaciones para conexiones individuales de clientes.
        Cuando el servidor arranca, inicializa todas las variables
        globales a sus valores por defecto. Estos valores pueden
        cambiarse con las opciones especificadas en los ficheros de
        opciones o en la línea de comandos. Una vez que el servidor
        arranca, aquellas variables globales que sean dinámicas pueden
        cambiarse conectando al servidor y ejectuando el comando
        SET GLOBAL
        . Para cambiar una
        variable global, debe tener el privilegio
        var_nameSUPER.
      
        El servidor mantiene un conjunto de variables de sesión para
        cada cliente que se conecta. Las variables de sesión del
        cliente se inicializan en tiempo de conexión usando los valores
        actuales de las correspondientes variables globales. Para
        aquellas variables de sesión que son dinámicas, el cliente
        puede cambiarlas mediante un comando SET SESSION
         . Cambiar una
        variable de sesión no necesita privilegios especiales, pero un
        cliente puede cambiar sólo sus variables de sesión, no las de
        ningún otro cliente.
      var_name
        Un cambio de una variable global es visible para cualquier
        cliente que acceda a esa variable global. Sin embargo, esto
        afecta a las correspondientes variables de sesión que se
        inicializan por la variable global sólo para clientes que se
        conecten después del cambio. Esto no afecta las variables de
        sesión para cualquier cliente que ya esté conectado (tampoco
        para los clientes que ejecuten el comando SET
        GLOBAL).
      
        Cuando se cambia una variable usando las opciones de arranque,
        los valores de la variable pueden darse con un sufijo
        K, M, o
        G para indicar kilobytes, megabytes, o
        gigabytes, respectivamente. Por ejemplo, el siguiente comando
        arranca el servidor con un tamaño de key buffer de 16
        megabytes:
      
mysqld --key_buffer_size=16M
        No importa que los sufijos se escriban en mayúscula o
        minúscula; 16M y 16m son
        equivalentes.
      
        En tiempo de ejecución, use el comando SET
        para cambiar las variables de sistema. En este contexto, los
        sufijos no pueden usarse, pero el valor puede tomar la forma de
        una expresión:
      
mysql> SET sort_buffer_size = 10 * 1024 * 1024;
        Para espeficicar explícitamente si desea cambiar la variable
        global o de sesión use la opción GLOBAL o
        SESSION:
      
mysql> SET GLOBAL sort_buffer_size = 10 * 1024 * 1024; mysql> SET SESSION sort_buffer_size = 10 * 1024 * 1024;
Sin dicha opción, el comando actualiza la variable de sesión.
Las variables que pueden cambiarse en tiempo de ejecución se listan en Sección 5.3.3.1, “Variables de sistema dinámicas”.
        Si desea restringir el valor máximo que puede tomar una
        variable de sistema con el comando SET ,
        puede especificarlo con
        --maximum-
        en el arranque del servidor. Por ejemplo, para evitar que el
        valor de var_namequery_cache_size se incremente por
        encima de 32MB en tiempo de ejecución, use la opción
        --maximum-query_cache_size=32M.
      
        Puede consultar las variables de sistema y sus valores usando el
        comando SHOW VARIABLES . Consulte
        Sección 9.4, “Variables de sistema” para más información.
      
mysql> SHOW VARIABLES; +---------------------------------+---------------------------------------------------------+ | Variable_name | Value | +---------------------------------+---------------------------------------------------------+ | auto_increment_increment | 1 | | auto_increment_offset | 1 | | automatic_sp_privileges | ON | | back_log | 50 | | basedir | / | | bdb_cache_size | 8388600 | | bdb_home | /var/lib/mysql/ | | bdb_log_buffer_size | 32768 | | bdb_logdir | | | bdb_max_lock | 10000 | | bdb_shared_data | OFF | | bdb_tmpdir | /tmp/ | | binlog_cache_size | 32768 | | bulk_insert_buffer_size | 8388608 | | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | | collation_connection | latin1_swedish_ci | | collation_database | latin1_swedish_ci | | collation_server | latin1_swedish_ci | | completion_type | 0 | | concurrent_insert | 1 | | connect_timeout | 5 | | datadir | /var/lib/mysql/ | | date_format | %Y-%m-%d | | datetime_format | %Y-%m-%d %H:%i:%s | | div_precision_increment | 4 | | default_week_format | 0 | | delay_key_write | ON | | delayed_insert_limit | 100 | | delayed_insert_timeout | 300 | | delayed_queue_size | 1000 | | expire_logs_days | 0 | | flush | OFF | | flush_time | 0 | | ft_boolean_syntax | + -><()~*:""&| | | ft_max_word_len | 84 | | ft_min_word_len | 4 | | ft_query_expansion_limit | 20 | | ft_stopword_file | (built-in) | | group_concat_max_len | 1024 | | have_archive | NO | | have_bdb | YES | | have_blackhole_engine | YES | | have_compress | YES | | have_crypt | YES | | have_csv | YES | | have_example_engine | YES | | have_federated_engine | YES | | have_geometry | YES | | have_innodb | YES | | have_isam | NO | | have_ndbcluster | DISABLED | | have_openssl | NO | | have_query_cache | YES | | have_raid | NO | | have_rtree_keys | YES | | have_symlink | YES | | init_connect | | | init_file | | | init_slave | | | innodb_additional_mem_pool_size | 1048576 | | innodb_autoextend_increment | 8 | | innodb_buffer_pool_awe_mem_mb | 0 | | innodb_buffer_pool_size | 8388608 | | innodb_checksums | ON | | innodb_concurrency_tickets | 500 | | innodb_data_file_path | ibdata1:10M:autoextend | | innodb_data_home_dir | | | innodb_doublewrite | ON | | innodb_fast_shutdown | 1 | | innodb_file_io_threads | 4 | | innodb_file_per_table | OFF | | innodb_flush_log_at_trx_commit | 1 | | innodb_flush_method | | | innodb_force_recovery | 0 | | innodb_lock_wait_timeout | 50 | | innodb_locks_unsafe_for_binlog | OFF | | innodb_log_arch_dir | | | innodb_log_archive | OFF | | innodb_log_buffer_size | 1048576 | | innodb_log_file_size | 5242880 | | innodb_log_files_in_group | 2 | | innodb_log_group_home_dir | ./ | | innodb_max_dirty_pages_pct | 90 | | innodb_max_purge_lag | 0 | | innodb_mirrored_log_groups | 1 | | innodb_open_files | 300 | | innodb_sync_spin_loops | 20 | | innodb_table_locks | ON | | innodb_support_xa | ON | | innodb_thread_concurrency | 8 | | innodb_thread_sleep_delay | 10000 | | interactive_timeout | 28800 | | join_buffer_size | 131072 | | key_buffer_size | 8388600 | | key_cache_age_threshold | 300 | | key_cache_block_size | 1024 | | key_cache_division_limit | 100 | | language | /usr/share/mysql/english/ | | large_files_support | ON | | large_pages | OFF | | large_page_size | 0 | | license | GPL | | local_infile | ON | | locked_in_memory | OFF | | log | OFF | | log_bin | OFF | | log_bin_trust_routine_creators | OFF | | log_error | | | log_slave_updates | OFF | | log_slow_queries | OFF | | log_warnings | 1 | | long_query_time | 10 | | low_priority_updates | OFF | | lower_case_file_system | OFF | | lower_case_table_names | 0 | | max_allowed_packet | 1048576 | | max_binlog_cache_size | 4294967295 | | max_binlog_size | 1073741824 | | max_connect_errors | 10 | | max_connections | 100 | | max_delayed_threads | 20 | | max_error_count | 64 | | max_heap_table_size | 16777216 | | max_insert_delayed_threads | 20 | | max_join_size | 4294967295 | | max_length_for_sort_data | 1024 | | max_relay_log_size | 0 | | max_seeks_for_key | 4294967295 | | max_sort_length | 1024 | | max_tmp_tables | 32 | | max_user_connections | 0 | | max_write_lock_count | 4294967295 | | multi_range_count | 256 | | myisam_data_pointer_size | 6 | | myisam_max_sort_file_size | 2147483647 | | myisam_recover_options | OFF | | myisam_repair_threads | 1 | | myisam_sort_buffer_size | 8388608 | | engine_condition_pushdown | OFF | | ndb_autoincrement_prefetch_sz | 32 | | ndb_force_send | ON | | ndb_use_exact_count | ON | | ndb_use_transactions | ON | | ndb_cache_check_time | 0 | | net_buffer_length | 16384 | | net_read_timeout | 30 | | net_retry_count | 10 | | net_write_timeout | 60 | | new | OFF | | old_passwords | OFF | | open_files_limit | 1024 | | optimizer_prune_level | 1 | | optimizer_search_depth | 62 | | pid_file | /var/lib/mysql/gigan.pid | | port | 3306 | | preload_buffer_size | 32768 | | protocol_version | 10 | | query_alloc_block_size | 8192 | | query_cache_limit | 1048576 | | query_cache_min_res_unit | 4096 | | query_cache_size | 0 | | query_cache_type | ON | | query_cache_wlock_invalidate | OFF | | query_prealloc_size | 8192 | | range_alloc_block_size | 2048 | | read_buffer_size | 131072 | | read_only | OFF | | read_rnd_buffer_size | 262144 | | relay_log_purge | ON | | relay_log_space_limit | 0 | | rpl_recovery_rank | 0 | | secure_auth | OFF | | server_id | 0 | | skip_external_locking | ON | | skip_networking | OFF | | skip_show_database | OFF | | slave_compressed_protocol | OFF | | slave_load_tmpdir | /tmp/ | | slave_net_timeout | 3600 | | slave_skip_errors | OFF | | slave_transaction_retries | 10 | | slow_launch_time | 2 | | socket | /var/lib/mysql/mysql.sock | | sort_buffer_size | 2097144 | | sql_mode | | | storage_engine | MyISAM | | sql_notes | OFF | | sql_warnings | OFF | | sync_binlog | 0 | | sync_replication | 0 | | sync_replication_slave_id | 0 | | sync_replication_timeout | 10 | | sync_frm | ON | | system_time_zone | EST | | table_cache | 64 | | table_type | MyISAM | | thread_cache_size | 0 | | thread_stack | 196608 | | time_format | %H:%i:%s | | time_zone | SYSTEM | | timed_mutexes | OFF | | tmp_table_size | 33554432 | | tmpdir | | | transaction_alloc_block_size | 8192 | | transaction_prealloc_size | 4096 | | tx_isolation | REPEATABLE-READ | | updatable_views_with_limit | YES | | version | 5.0.7-beta-Max | | version_bdb | Sleepycat Software: Berkeley DB 4.1.24: (June 11, 2005) | | version_comment | MySQL Community Edition - Max (GPL) | | version_compile_machine | i686 | | version_compile_os | pc-linux-gnu | | wait_timeout | 28800 | +---------------------------------+---------------------------------------------------------+ 219 rows in set (0.00 sec)
        La mayoría de variables de sistema se describen aquí. Las
        variables sin versión indican que están presentes en todas las
        versiones de MySQL 5.0. Para información histórica acerca de
        sus implementaciones, consulte
        Manual de referencia de MySQL 4.1. Las variables de
        sistema InnoDB están listadas en
        Sección 15.4, “Opciones de arranque de InnoDB”.
      
Los valores para tamaños de buffer, longitudes y tamaño de pila se dan en bytes a no ser que se especifique otra unidad.
Información sobre el ajuste de estas variables se encuentra en Sección 7.5.2, “Afinar parámetros del servidor”.
            auto_increment_increment
          
            auto_increment_increment y
            auto_increment_offset están pensados
            para usarse con replicación maestro-a-maestro, y puede
            usarse para controlar la operación de columnas
            AUTO_INCREMENT . Ambas variables pueden
            cambiarse global o localmente, y cada una de ellas puede
            tomar un valor entre 1 y 65.535 incluídos. Cambiar el valor
            de estas variables a 0 causa que su valor sea 1. Intentar
            cambiar el valor de cualquiera de estas variables a un
            entero mayor que 65,535 o menor a 0 causa que su valor sea
            65,535. Intentar cambiar el valor de
            auto_increment_increment o de
            auto_increment_offset con un valor no
            entero da un error, y el valor de la variable no se cambie
            en ese caso.
          
            Estas dos variables afectan al comportamiento de la columnas
            AUTO_INCREMENT así:
          
                auto_increment_increment controla el
                intervalo en que se incrementa el valor de columna. Por
                ejemplo:
              
mysql> SHOW VARIABLES LIKE 'auto_inc%'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | auto_increment_increment | 1 | | auto_increment_offset | 1 | +--------------------------+-------+ 2 rows in set (0.00 sec) mysql> CREATE TABLE autoinc1 (col INT NOT NULL AUTO_INCREMENT PRIMARY KEY); Query OK, 0 rows affected (0.04 sec) mysql> SET @auto_increment_increment=10; Query OK, 0 rows affected (0.00 sec) mysql> SHOW VARIABLES LIKE 'auto_inc%'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | auto_increment_increment | 10 | | auto_increment_offset | 1 | +--------------------------+-------+ 2 rows in set (0.01 sec) mysql> INSERT INTO autoinc1 VALUES (NULL), (NULL), (NULL), (NULL); Query OK, 4 rows affected (0.00 sec) Records: 4 Duplicates: 0 Warnings: 0 mysql> SELECT col FROM autoinc1; +-----+ | col | +-----+ | 1 | | 11 | | 21 | | 31 | +-----+ 4 rows in set (0.00 sec)
                (Note cómo se usa SHOW VARIABLES
                para obtener el valor actual de estas variables.)
              
                auto_increment_offset determina el
                punto de inicio para el valor de las columnas
                AUTO_INCREMENT. Considere lo
                siguiente, asumiendo que estos comandos se ejecutan
                durante la misma sesión que el ejemplo anterior:
              
mysql> SET @auto_increment_offset=5; Query OK, 0 rows affected (0.00 sec) mysql> SHOW VARIABLES LIKE 'auto_inc%'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | auto_increment_increment | 10 | | auto_increment_offset | 5 | +--------------------------+-------+ 2 rows in set (0.00 sec) mysql> CREATE TABLE autoinc2 (col INT NOT NULL AUTO_INCREMENT PRIMARY KEY); Query OK, 0 rows affected (0.06 sec) mysql> INSERT INTO autoinc2 VALUES (NULL), (NULL), (NULL), (NULL); Query OK, 4 rows affected (0.00 sec) Records: 4 Duplicates: 0 Warnings: 0 mysql> SELECT col FROM autoinc2; +-----+ | col | +-----+ | 5 | | 15 | | 25 | | 35 | +-----+ 4 rows in set (0.02 sec)
                Si el valor de auto_increment_offset
                es mayor que el de
                auto_increment_increment, entonces el
                valor auto_increment_offset se
                ignora.
              
            Si una o ambas variables se cambian y los nuevos registros
            insertados en una tabla que contengan una columna
            AUTO_INCREMENT , el resultado puede ser
            no intuitivo, como los valores de las series de
            AUTO_INCREMENT se calculan sin tener en
            cuenta los valores ya existentes en la columna, y el
            siguiente valor insertado es el menor valor de la serie que
            es mayor al máximo valor existente en la columna
            AUTO_INCREMENT . En otras palabras, la
            serie se calcula así:
          
            auto_increment_offset +
            
          N *
            auto_increment_increment
            donde N es un entero positivo en
            la serie [1, 2, 3, ...]. Por ejemplo:
          
mysql> SHOW VARIABLES LIKE 'auto_inc%'; +--------------------------+-------+ | Variable_name | Value | +--------------------------+-------+ | auto_increment_increment | 10 | | auto_increment_offset | 5 | +--------------------------+-------+ 2 rows in set (0.00 sec) mysql> SELECT col FROM autoinc1; +-----+ | col | +-----+ | 1 | | 11 | | 21 | | 31 | +-----+ 4 rows in set (0.00 sec) mysql> INSERT INTO autoinc1 VALUES (NULL), (NULL), (NULL), (NULL); Query OK, 4 rows affected (0.00 sec) Records: 4 Duplicates: 0 Warnings: 0 mysql> SELECT col FROM autoinc1; +-----+ | col | +-----+ | 1 | | 11 | | 21 | | 31 | | 35 | | 45 | | 55 | | 65 | +-----+ 8 rows in set (0.00 sec)
            Los valores mostrados por
            auto_increment_increment y
            auto_increment_offset generan las series
            5 + N * 10, esto es, [5, 15, 25,
            35, 45, ...]. El mayor valor presente en la columna
            col antes del INSERT
            es 31, y el siguiente valor disponible en la serie
            AUTO_INCREMENT es 35, así que los
            valores insertados para col empiezan en
            ese punto y los resultados se muestran para la consulta
            SELECT.
          
            Es importante recordar que no es posible confinar los
            efectos de estas dos variables en una sola tabla, y por lo
            tanto no toman el lugar de la secuencia ofrecido por otros
            sistemas gestores de bases de datos; estas variables
            controlan el comportamiento de todas las columnas
            AUTO_INCREMENT en
            todas las tablas del
            servidor MySQL. Si una de estas variables se cambia
            globalmente, entonces sus efectos persisten hasta que el
            valor global se cambia o subyace al cambiarlo localmente, o
            hasta que se reinicia mysqld ; si se
            cambia localmente, entonces el nuevo valor afecta a las
            columnas AUTO_INCREMENT para todas las
            tablas en que se inserten nuevos registros por el usuario
            actual durante la sesión, hasta que los valores se cambien
            durante esa sesión.
          
            La variable auto_increment_increment se
            añadió en MySQL 5.0.2. Su valor por defecto es 1. Consulte
            Capítulo 6, Replicación en MySQL.
          
            auto_increment_offset
          
            Esta variable se añadió en MySQL 5.0.2. Su valor por
            defecto es 1. Para más detalles, consulte la descripción
            de auto_increment_increment.
          
            back_log
          
            El numero de peticiones de conexión que puede tener MySQL.
            Esto se usa cuando el thread principal de MySQL recibe
            muchas peticiones de conexión en un pequeño lapso de
            tiempo. Necesita algo de tiempo (aunque muy poco) el thread
            principal para comprobar la conexión y empezar un nuevo
            thread. El valor de back_log indica
            cuántas peticiones pueden almacenarse duarnte este corto
            espacio de tiempo antes que MySQL temporalmente pare de
            responder a nuevas peticiones. Necesita incrementarlo sólo
            si espera un gran número de conexiones en un pequeño lapso
            de tiempo.
          
            En otras palabras, este valor es el tamaño de la cola que
            escucha conexiones TCP/IP entrantes. El sistema operativo
            tiene su propio límite en el tamaño de la cola. La página
            del manual para la llamada de sistema Unix
            listen() proporcion más detalles.
            Consulte la documentación del SO para el máximo valor de
            esta variable. Intentar cambiar el valor de
            back_log por encima del límite del
            sistema operativo no es efectivo.
          
            basedir
          
            El directorio de instalación de MySQL. Esta variable puede
            cambiarse con la opción --basedir .
          
            bdb_cache_size
          
            El tamaño del buffer que se utiliza para cachear índices y
            registros para tablas BDB . Si no usa
            tablas BDB debe arrancar
            mysqld con --skip-bdb
            para no gastar memoria para esta caché.
          
            bdb_home
          
            El directorio base para las tablas BDB
            tables. Debe asignarse el mismo valor que para la variable
            datadir.
          
            bdb_log_buffer_size
          
            El tamaño del buffer que se utiliza para cachear índices y
            registros para tablas BDB . Si no usa
            tablas BDB , debe usar el valor 0 o
            arrancar mysqld con
            --skip-bdb para no gastar memoria con
            esta caché.
          
            bdb_logdir
          
            El directorio en que el motor de almacenamiento
            BDB escribe sus ficheros de log. Esta
            variable puede cambiarse con la opción
            --bdb-logdir .
          
            bdb_max_lock
          
            El máximo número de bloqueos que pueden tenerse activos en
            una tabla BDB (10,000 por defecto). Debe
            incrementarlo si errores como los siguientes ocurren cuando
            realiza transacciones grandes o cuando
            mysqld tiene que examinar muchos
            registros para calcular una consulta:
          
bdb: Lock table is out of available locks Got error 12 from ...
            bdb_shared_data
          
            Está ON si usa
            --bdb-shared-data.
          
            bdb_tmpdir
          
            El valor de la opción --bdb-tmpdir .
          
            bdb_version
          
            Consulte la versión de version_bdb.
          
            binlog_cache_size
          
            El tamaño de la caché para tratar comandos SQL para el log
            binario durante una transacción. La cache del log binario
            se guarda para cada cliente si el servidor soporta diversos
            motores de almacenamiento transaccionales, empezando por
            MySQL 4.1.2, si el servidor tiene activados los logs
            binarios (opción --log-bin). Si suele
            usar transacciones grandes, con múltiples comandos, puede
            incrementar este valor para mejorar el rendimiento. Las
            variables de estado Binlog_cache_use y
            Binlog_cache_disk_use pueden ser útiles
            para ajustar el tamaño de estas variables. Consulte
            Sección 5.10.3, “El registro binario (Binary Log)”.
          
            bulk_insert_buffer_size
          
            MyISAM usa una caché especial con forma
            de árbol para hacer las inserciones más rápidas para
            INSERT ... SELECT, INSERT ...
            VALUES (...), (...), ..., y LOAD DATA
            INFILE. Esta variable limita el tamaño del árbol
            de la caché en bytes por thread. Cambiarlo a 0 desactiva
            esta optimización. Nota:
            Esta caché se usa sólo al añadir datos en una tabla no
            vacía. El valor por defecto es 8MB.
          
            character_set_client
          
El conjunto de caracteres para comandos que llegan del cliente.
            character_set_connection
          
El conjunto de caracteres usado por los literales que no tienen un conjunto de caracteres introducido y para conversiones de números a cadenas de caracteres.
            character_set_database
          
            El conjunto de caracteres usado por la base de datos por
            defecto. El servidor actualiza esta variable cada vez que la
            base de datos por defecto cambia. Si no hay base de datos
            por defecto, la variable toma el mismo valor que
            character_set_server.
          
            character_set_results
          
El conjunto de caracteres usado para retornar los resultados de las consultas al cliente.
            character_set_server
          
El conjunto de caracteres por defecto del servidor.
            character_set_system
          
            El conjunto de caracteres usado por el servidor para
            almacenar identificadores. El valor es siempre
            utf8.
          
            character_sets_dir
          
El directorio en el que están instalados los conjuntos de caracteres.
            collation_connection
          
La colación del conjunto de caracteres de las conexiones.
            collation_database
          
            La colación usada por la base de datos por defecto. El
            servidor cambia esta variable cada vez que la base de datos
            por defecto cambia. Si no hay una base de datos por defecto,
            la variable toma el valor de
            collation_server.
          
            collation_server
          
La colación por defecto del servidor.
            concurrent_insert
          
            Si ON (por defecto), MySQL permite
            comandos INSERT y
            SELECT que se ejecuten concurrentemente
            para tablas MyISAM que no tienen bloques
            libres en el medio. Puede desactivar esta opción arrancando
            mysqld con --safe or
            --skip-new.
          
En MySQL 5.0.6 esta variable ha cambiado a un entero que toma 3 valores:
| Valor | Descripción | 
| 0 | Off | 
| 1 | (Defecto) Permite inserciones concurrentes para tablas MyISAM que no tienen agujeros | 
| 2 | Permite inserciones concurrentes para todas las tablas MyISAM. Si la tabla tiene un agujeroy está en uso por otro thread el nuevo registro se insertará al final de la tabla. Si la tabla no está en uso, MySQL hará un bloqueo de lectura normal e insertará el registro en el agujero. | 
            El número de segundos que el servidor
            mysqld espera para un paquete de
            conexión antes de responder con Bad
            handshake.
          
            datadir
          
            El directorio de datos de MySQL. Esta variable puede
            cambiarse con la opción --datadir.
          
            default_week_format
          
            El modo a usar por la función WEEK().
          
            delay_key_write
          
            Esta opción se aplica sólo a tablas
            MyISAM . Puede tener uno de los
            siguientes valores que afectan la forma de tratar la opción
            DELAY_KEY_WRITE que puede usarse en los
            comandos CREATE TABLE .
          
| Opción | Descrición | 
| OFF | DELAY_KEY_WRITEse ignora. | 
| ON | MySQL activa la opción DELAY_KEY_WRITEparaCREATE TABLE. Este es el valor
                    por defecto. | 
| ALL | Todas las nuevas tablas abiertas se tratan como si se hubieran creado
                    con la opción DELAY_KEY_WRITEactivada. | 
            Si DELAY_KEY_WRITE está activo,
            significa que el key buffer para tablas con esta opción no
            se vuelcan en cada actualización del índice, sino que
            sólo cuando se cierra una tabla. Esto acelera las
            escrituras de claves, pero si usa esta característica, debe
            añadir chequeo automático de todas las tablas
            MyISAM arrancando el servidor con la
            opción --myisam-recover (por ejemplo
            --myisam-recover=BACKUP,FORCE). Consulte
            Sección 5.3.1, “Opciones del comando mysqld” y
            Sección 14.1.1, “Opciones de arranque de MyISAM”.
          
            Tenga en cuenta que --external-locking no
            ofrece ninguna protección contra corrupción de índices
            para tablas que usan escrituras de claves retardadas.
          
            delayed_insert_limit
          
            Tras insertar delayed_insert_limit
            registros retardados, el thread que se encarga del
            INSERT DELAYED comprueba si hay algún
            comando SELECT pendiente. Si es así, les
            permite que se ejecuten antes de continuar insertando
            registros retardados.
          
            delayed_insert_timeout
          
            Cuánto debe esperar el thread encargado de INSERT
            DELAYED para un comando INSERT
            antes de terminar.
          
            delayed_queue_size
          
            Este es el límite por tabla del número de registros a
            encolar cuando se tratan comandos INSERT
            DELAYED . Si la cola se llena, cualquier cliente
            que lance un comando INSERT DELAYED
            espera hasta que haya espacio en la cola de nuevo.
          
            expire_logs_days
          
El número de días para eliminar el log binario automáticamente. El valor por defecto es 0, lo que significa ``sin eliminación automática''. Las posibles eliminaciones se realizan al arranque y en la rotación del log binario.
            flush
          
            Está ON si ha arrancado
            mysqld con la opción
            --flush.
          
            flush_time
          
            Si se asigna un valor distinto a cero, todas las tablas se
            cierran cada flush_time segundos para
            liberar recursos y sincronizar datos no volcados en disco.
            Recomendamos que esta opción se use sólo en Windows 9x o
            Me, o en sistemas con recursos mínimos.
          
            ft_boolean_syntax
          
            La lista de operadores soportado por búsquedas full-text
            booleanas usando IN BOOLEAN MODE.
            Consulte Sección 12.7.1, “Búsquedas booleanas de texto completo (Full-Text)”.
          
            El valor por defecto de la variable es '+
            -><()~*:""&|'. Las reglas para
            cambiar el valor son las siguientes:
          
La función del operador viene determinada por su posición en la cadena de caracteres.
El valor de reemplazo debe tener 14 caracteres.
Cada carácter debe ser ASCII y no alfanumérico.
El primer o segundo carácter debe ser un espacio.
No se permiten duplicados excepto los operadores delimitadores de frase en las posiciones 11 y 12. Estos dos caracteres no tienen porqué ser los mismos, pero son los dos únicos posibles.
                Las posiciones 10, 13, y 14 (que por defecto son
                ':', '&', y
                '|') están reservados para
                extensiones futuras.
              
            ft_max_word_len
          
            La longitud máxima de la palabra incluída en un índice
            FULLTEXT .
          
            Nota: índices
            FULLTEXT deben reconstruirse al cambiar
            esta variable. Use REPAIR TABLE
            .
          tbl_name QUICK
            ft_min_word_len
          
            La longitud mínima de la palabra a incluirse en un índice
            FULLTEXT .
          
            Nota: índices
            FULLTEXT deben reconstruirse tras cambiar
            estas variables. Use REPAIR TABLE
            .
          tbl_name QUICK
            ft_query_expansion_limit
          
            El número de mejores coincidencias a usar en búsquedas
            full-text realizadas usando WITH QUERY
            EXPANSION.
          
            ft_stopword_file
          
            El fichero del que lee la lista de palabras de detención en
            búsquedas full-text. Todas las palabras del fichero se
            usan; los comentarios no se tienen en
            cuenta. Por defecto, se usa una lista de palabras de
            detención ( como se define en el fichero
            myisam/ft_static.c ). Actualizar esta
            variable con una cadena vacía ('')
            desactiva el filtrado de palabras de detención.
          
            Nota: índices
            FULLTEXT deben reconstruirse tras cambiar
            esta variable o los contenidos del fichero de palabras de
            detención. Use REPAIR TABLE
            .
          tbl_name QUICK
            group_concat_max_len
          
            El valor máximo permitido para la longitud del resultado de
            la función GROUP_CONCAT().
          
            have_archive
          
            YES si mysqld soporta
            tablas ARCHIVE, NO si
            no.
          
            have_bdb
          
            YES si mysqld soporta
            tablas BDB. DISABLED
            si se usa --skip-bdb.
          
            have_compress
          
            Si está disponible la biblioteca de compresión
            zlib en el servidor. Si no lo está, las
            funciones COMPRESS() y
            UNCOMPRESS() no pueden usarse.
          
            have_crypt
          
            Si la llamada de sistema crypt() está
            disponible en el servidor. Si no, la función
            CRYPT() no puede usarse.
          
            have_csv
          
            YES si mysqld soporta
            tablas ARCHIVE, NO si
            no.
          
            have_example_engine
          
            YES si mysqld soporta
            tablas EXAMPLE , NO si
            no.
          
            have_federated_engine
          
            YES si mysqld soporta
            tablas FEDERATED, NO
            si no. Esta variable se añadió en MySQL 5.0.3.
          
            have_geometry
          
Si el servidor soporta tipos de datos espaciales.
            have_innodb
          
            YES si mysqld soporta
            tablas InnoDB .
            DISABLED si se usa
            --skip-innodb.
          
            have_isam
          
            En MySQL 5.0, esto aparece sólo por razones de
            compatibilidad con versiones anteriores, y siempre es
            NO, ya que no hay soporte para tablas
            ISAM.
          
            have_ndbcluster
          
            YES si mysqld soporta
            tablas NDB Cluster .
            DISABLED si se usa
            --skip-ndbcluster .
          
            have_openssl
          
            YES si mysqld soporta
            SSL (encriptación) del protocolo cliente/servidor.
          
            have_query_cache
          
            YES si mysqld soporta
            la cache de consultas.
          
            have_raid
          
            YES si mysqld soporta
            la opción RAID .
          
            have_rtree_keys
          
            Si los índices RTREE están disponibles.
            (Se usan para indexación espacial en tablas
            MyISAM.)
          
            have_symlink
          
            Si el soporte para enlaces simbólicos está activado. Es un
            requesito en Unix para soporte de las opciones de tabla
            DATA DIRECTORY y INDEX
            DIRECTORY .
          
            init_connect
          
            Una cadena de caracteres que ejecuta el servidor para cada
            cliente que se conecta. La cadena consiste en uno o más
            comandos SQL. Para especificar varios comandos, sepárelos
            con un punto y coma. Por ejemplo, cada cliente arranca por
            defecto con modo autocommit activado. No hay ninguna
            variable de servidor global para especificar que autocommit
            esté desactivado por defecto, pero puede usar
            init_connect para conseguir el mismo
            efecto:
          
SET GLOBAL init_connect='SET AUTOCOMMIT=0';
Esta variable puede cambiarse en la línea de comandos o en un fichero de opciones. Para cambiar la variable tal y como se ha mostrado usando un fichero de opciones, incluya las siguientes líneas:
[mysqld] init_connect='SET AUTOCOMMIT=0'
            Tenga en cuenta que el contenido de
            init_connect no se ejecuta para usuarios
            con el privilegio SUPER; esto es para el
            caso que el contenido se haya introducido incorrectamente
            (contiene una consulta incorrecta, por ejemplo con un error
            de sintaxis), haciendo que todas las conexiones fallen. No
            ejecutarlo para usuarios SUPER permite
            que éstos abran una conexión y arreglen
            init_connect.
          
            init_file
          
            El nombre del fichero especificado con la opción
            --init-file cuando arranca el servidor.
            Este fichero contiene comandos SQL que se ejecutan al
            arrancar el servidor. Cada comando debe estar en una única
            línea y no debe incluir comentarios.
          
            init_slave
          
            Esta variable es similar a init_connect,
            pero es una cadena de caracteres que se ejecuta por parte de
            un servidor esclavo cada vez que el thread SQL arranca. El
            formato de la cadena de caracteres es el mismo que para la
            variable init_connect.
          
            innodb_
          xxx
            Las variables InnoDB de sistema se listan
            en Sección 15.4, “Opciones de arranque de InnoDB”.
          
            interactive_timeout
          
            El número de segundos que espera el servidor para actividad
            en una conexión interactiva antes de cerrarla. Un cliente
            interactivo se define como un cliente que usa la opción
            CLIENT_INTERACTIVE para
            mysql_real_connect(). Consulte también
            wait_timeout.
          
            join_buffer_size
          
            El tamaño del buffer que se usa para full joins (joins que
            no usan índices). Normalmente la mejor forma de conseguir
            joins rápidos es añadir índices. Incrementar el valor de
            join_buffer_size para obtener un full
            join más rápido cuando se añaden índices no es posible.
            Un buffer para joins se reserva para cada full join entre
            dos tablas. Para un join complejo entre varias tablas en que
            sus índices no se usan, buffers para joins múltiples
            pueden ser necesarios.
          
            Los bloques de índices para tablas
            MyISAM y ISAM se
            guardan en buffers y se comparten para todos los threads.
            key_buffer_size es el tamaño del buffer
            usado para los bloques de índices. El key buffer también
            se conoce como la key cache.
          
            El tamaño máximo permitido para
            key_buffer_size es 4GB. El máximo
            tamaño efectivo puede ser menor, dependiendo de la memoria
            RAM física y los límites por proceso de RAM impuestos por
            el sistema operativo o la plataforma hardware.
          
Incremente el valor para obtener un mejor tratamiento de índices (para todas las lecturas y escrituras múltiples) al máximo que pueda permitirse. El uso de un valor que sea el 25% del total de memoria en una máquina que principalmente ejecute MySQL es bastante común. Sin embargo, si el valor es demasiado grande (por ejemplo, más del 50% del total de la memoria) el sistema puede empezar a paginar y ser extremadamente lento. MySQL confía en el sistema operativo para tratar el cacheo del sistema de ficheros para las lecturas de datos, así que debe dejar algún espacio para cachear el sistema de ficheros.
            Para más velocidad al escribir varios registros al mismo
            tiempo , use LOCK TABLES. Consulte
            Sección 13.4.5, “Sintaxis de LOCK TABLES y UNLOCK
        TABLES”.
          
            Puede chequear el rendimiento del key buffer con el comando
            SHOW STATUS y examinando las variables de
            estado Key_read_requests,
            Key_reads,
            Key_write_requests, y
            Key_writes . Consulte
            Sección 13.5.4, “Sintaxis de SHOW”.
          
            El ratio Key_reads/Key_read_requests
            normalmente debe ser menor a 0.01. El ratio
            Key_writes/Key_write_requests normalmente
            está cerca de 1 si usa mayoritariamente actualizaciones y
            borrados, pero puede ser mucho menor si tiende a hacer
            actualizaciones que afecten a muchos registros al mismo
            tiempo o si usa la opción de tabla
            DELAY_KEY_WRITE .
          
            La fracción del key buffer en uso puede determinarse
            mediante key_buffer_size conjuntamente
            con la variable de estado
            Key_blocks_unused y el tamaño de bloque
            del buffer. El tamaño de bloque del buffer está disponible
            en la variable de servidor
            key_cache_block_size . La fracción del
            buffer en uso es:
          
1 - ((Key_blocks_unused * key_cache_block_size) / key_buffer_size)
Este valor es una aproximación ya que algún espacio del key buffer puede estar reservado internamente para estructuras administrativas.
            En MySQL 5.0, es posible crear múltiples key caches para
            tablas MyISAM. El límite de tamaño de 4GB se aplica a cada
            caché individualmente, no como grupo. Consulte
            Sección 7.4.6, “La caché de claves de MyISAM”.
          
            key_cache_age_threshold
          
            Este valor controla la demotion de buffers desde la
            sub-cadena caliente de una key cache a la sub-cadena
            templada. Los valores más pequeño provocan que la demotion
            ocurra más rápidamenet. El valor mínimo es 100. El valor
            por defecto es 300. Consulte
            Sección 7.4.6, “La caché de claves de MyISAM”.
          
            key_cache_block_size
          
            El tamaño en bytes de los bloques de la key cache. El valor
            por defecto es 1024. Consulte
            Sección 7.4.6, “La caché de claves de MyISAM”.
          
            key_cache_division_limit
          
            El punto de división entre las sub-cadenas calientes y
            tempaladas de la cadena del buffer de la key cache. El valor
            es el porcentaje de la cadena del buffer para usar en la
            sub-cadena templada. El rango de los valores permitidos es
            de 1 a 100. El valor por defecto es 100. Consulte
            Sección 7.4.6, “La caché de claves de MyISAM”.
          
            language
          
El idioma usado para los lenguajes de error.
            large_file_support
          
Si mysqld está compilado con la opción de soporte para grandes ficheros.
            large_pages
          
Indica si está activado el soporte para páginas grandes. Esta variable se añadió en MySQL 5.0.3.
            license
          
El tipo de licencia que tiene el servidor.
            local_infile
          
            Si LOCAL está soportado para comandos
            LOAD DATA INFILE.
          
            locked_in_memory
          
            Si mysqld está bloqueado en memoria con
            --memlock.
          
            log
          
Si el logueo de todas las consultas en el log general de consultas está activado. Consulte Sección 5.10.2, “El registro general de consultas”.
            log_bin
          
Si el log binario está activado. Consulte Sección 5.10.3, “El registro binario (Binary Log)”.
log_bin_trust_routine_creators
            Esta variable se aplica cuando el log binario está
            activado. Controla si los creadores de rutinas almacenadas
            son o no de confianza para crear rutinas almacenadas que
            escribirán eventos no seguros en el log binario. Si está a
            0 (por defecto), los usuarios no tienen permiso para crear o
            cambiar rutinas almacenadas a no ser que tengan el
            privilegio SUPER además del privilegio
            CREATE ROUTINE o ALTER
            ROUTINE .
          
            Asignar el valor 0 fuerza la restricción que una rutina
            debe declararse con la característica
            DETERMINISTIC , o con las
            características READS SQL DATA o
            NO SQL . Si la variable tiene el valor 1,
            MySQL no fuerza esta restricción en la creación de rutinas
            almacenadas.
          
Consulte Sección 19.3, “Registro binario de procedimientos almacenados y disparadores”.
Esta variable se añadió en MySQL 5.0.6.
            log_error
          
La localización del log de errores.
            log_slave_updates
          
Si las actualizaciones recibidas por un servidor esclavo de un servidor maestro deben loguearse en el log binario del servidor esclavo. El logueo binario debe estar disponible en el esclavo para que tenga efecto. Consulte Sección 6.8, “Opciones de arranque de replicación”.
            log_slow_queries
          
            Si una consulta lenta debe loguearse. ``Lenta'' está
            determinado por el valor de la variable
            long_query_time. Consulte
            Sección 5.10.4, “El registro de consultas lentas (Slow Query Log)”.
          
            log_warnings
          
Si produce mensajes de advertencia adicionales. Está activado por defecto. Las conexiones abortadas no se loguean en el log de error a no ser que el valor sea mayor a 1.
            long_query_time
          
            Si una consulta dura más que este valor en segundos, la
            variable de estado Slow_queries se
            incrementa. Si está usando la opción
            --log-slow-queries , la consulta se
            loguea en el fichero de log para consultas lentas. Este
            valor se mide en tiempo real, no tiempo de CPU, así que una
            consulta que esté bajo el umbral en un sistema con poca
            carga puede estar por encima del umbral en un sistema con
            mucha carga. Consulte Sección 5.10.4, “El registro de consultas lentas (Slow Query Log)”.
          
            low_priority_updates
          
            Con el valor 1, todos los comandos
            INSERT, UPDATE,
            DELETE, y LOCK TABLE
            WRITE esperan hasta que no hayan pendientes
            SELECT o LOCK TABLE
            READ en la tabla afectada. Esta variable se
            llamaba préviamente
            sql_low_priority_updates.
          
            lower_case_file_system
          
            Esta variable indica si el sistema de ficheros donde el
            directorio de datos está localizado tiene nombres de
            ficheros no sensibles a mayúsculas y minúsculas.
            ON significa que los nombres del fichero
            no son sensibles a mayúsculas y minúsculas,
            OFF significa que son sensibles a
            mayúsculas y minúsculas.
          
            lower_case_table_names
          
Con el valor 1, los nombres de tablas se almacenan en minúsuculas en disco y las comparaciones de nombres de tablas no tienen en cuenta mayúsculas y minúsculas. Esta opción también se aplica a nombres de bases de datos y alias de tablas. Consulte Sección 9.2.2, “Sensibilidad a mayúsuclas y minúsculas de identificadores”.
            Si usa tablas InnoDB , debe asignar a
            esta variable el valor 1 en todas las plataformas para
            forzar que los nombres se conviertan a minúsculas.
          
            No debe asignar a esta variable el
            valor 0 si está ejecutando MySQL en un sistema que no tiene
            nombres de ficheros sensibles a mayúsculas y minúsculas
            (tales como Windows o Mac OS X). Si esta variable no tiene
            un valor al arrancar y el sistema de ficheros donde está
            localizado el directorio de datos no tiene nombres de
            ficheros sensibles a mayúsculas y minúsculas, MySQL
            automáticamente asigna a
            lower_case_table_names el valor 2.
          
            max_allowed_packet
          
El tamaño máximo de un paquete o cualquier cadena de caracteres generada/intermedia.
            El buffer de paquetes de mensajes se inicializa a
            net_buffer_length bytes, pero puede
            crecer hasta max_allowed_packet bytes
            cuando sea necesario. Este valor por defecto es pequeño,
            para recibir paquetes grandes (posiblemente incorrectos).
          
            Debe incrementar este valor si está usando columnas grandes
            BLOB o cadenas de caracteres largas. Debe
            ser tan grande como el mayor BLOB que
            quiera usar. En MySQL 5.0, el límite del protocolo para
            max_allowed_packet es 1GB.
          
            max_binlog_cache_size
          
            Si una transacción con múltiples comandos requiere más
            que esta cantidad de memoria, obtiene el error
            Multi-statement transaction required more than
            'max_binlog_cache_size' bytes of storage.
          
            max_binlog_size
          
Si una escritura en el log binario excede el valor dado, rota el log binario. No puede cambiar este valor a más de 1GB o a menos de 4096 bytes. El valor por defecto es 1GB.
            Nota en caso que use transacciones: Una transacción se
            escribe en un trozo del log binario, así que nunca se
            trocea entre varios logs binarios. Por lo tanto, si tiene
            transacciones grandes, puede ver logs binarios mayores que
            max_binlog_size.
          
            Si max_relay_log_size es 0, el valor de
            max_binlog_size se aplica a relay logs
            también.
          
            max_connect_errors
          
            Si hay más que este número de conexiones interrumpidas de
            un equipo, este equipo se bloquea para más conexiones.
            Puede desbloquear equipos bloqueados con el comando
            FLUSH HOSTS.
          
            max_connections
          
            El número de conexiones de cliente simultáneas permitidas.
            Incrementar este valor incrementa el número de descriptores
            de fichero que requiere mysqld . Consulte
            Sección 7.4.8, “Cómo abre y cierra tablas MySQL” para comentarios sobre
            límites en los descriptores de fichero. Consulte también
            Sección A.2.6, “Demasiadas conexiones”.
          
            max_delayed_threads
          
            No arranque más que este número de threads para tratar
            comandos INSERT DELAYED . Si trata de
            insertar datos en una nueva tabla después de que todos los
            threads INSERT DELAYED estén en uso, el
            registro se inserta como si el atributo
            DELAYED no se hubiera especificado. Si
            cambia este valor a 0, MySQL nunca crea un thread para
            tratar registros DELAYED ; en efecto,
            esto desactiva DELAYED completamente.
          
            max_error_count
          
            El número máximo de mensajes de error, advertencia, y
            notas que se guardan para mostrar con SHOW
            ERRORS o SHOW WARNINGS.
          
            max_heap_table_size
          
            Esta variable cambia el máximo valor para el que las tablas
            MEMORY (HEAP) pueden
            crecer. El valor de la variable se usa para calcular el
            valor MAX_ROWS en tablas
            MEMORY. Cambiar esta variable no tiene
            efecto en ninguna tabla MEMORY existente,
            a no ser que la tabla se recree con un comando tal como
            CREATE TABLE o TRUNCATE
            TABLE, o cambiada con ALTER
            TABLE.
          
            max_insert_delayed_threads
          
            Esta variable es sinónimo de
            max_delayed_threads.
          
            max_join_size
          
            No permite los comandos SELECT que
            probablemente tengan que examinar más de
            max_join_size registros (para comandos en
            una misma tabla) o combinaciones de registros (para comandos
            con varias tablas) o que sea probable que hagan más de
            max_join_size búsquedas de disco. Al
            cambiar este valor, puede cazar los comandos
            SELECT donde las claves no se usan
            correctamente y que probablemente tardaran mucho tiempo.
            Cámbielo si sus usuarios tienden a realizar joins sin una
            cláusula WHERE , que tarden mucho
            tiempo, o que devuelvan millones de registros.
          
            Al cambiar esta variable a un valor que no sea
            DEFAULT resetea el valor de
            SQL_BIG_SELECTS a 0.
            Si cambia el valor SQL_BIG_SELECTS de
            nuevo, la variable max_join_size se
            ignora.
          
Si el resultado de una consulta está en la caché de consultas, no se hace el chequeo del tamaño del resultado, ya que el resultado se ha computado préviamente y no carga al servidor al enviarlo al cliente.
            Esta variable préviamente se llamaba
            sql_max_join_size.
          
            max_length_for_sort_data
          
            El límite en el tamaño del índice que determina qué
            algoritmo filesort se usa. Consulte
            Sección 7.2.10, “Cómo optimiza MySQL ORDER BY”.
          
            max_relay_log_size
          
            Si una escritura de un esclavo de replicación a su relay
            log excede el valor dado, rota el relay log. Esta variable
            le permite poner diferentes restricciones de tamaño en logs
            binarios y relay logs. Sin embargo, cambiar la variable a 0
            hace que MySQL use max_binlog_size para
            el log binario y el relay log. Debe asignar un valor a
            max_relay_log_size entre 4096 bytes y 1GB
            (incluídos), o 0. El valor por defecto es 0. Consulte
            Sección 6.3, “Detalles de la implementación de la replicación”.
          
            max_seeks_for_key
          
            Limita el máximo número de búsquedas al buscar registros
            basados en una clave. El optimizador de MySQL asume que no
            se requieren más que este número de búsquedas de claves
            al buscar registros en una tabla al escanear una clave, a
            pesar de la cardinalidad real de la clave (consulte
            Sección 13.5.4.11, “Sintaxis de SHOW INDEX”). Si se pone un valor pequeño
            (100?), puede forzar a MySQL a que prefiera claves en lugar
            de escaneos de tablas.
          
            max_sort_length
          
            Número de bytes que se usan al ordenar valores
            BLOB o TEXT . Sólo
            los primeros max_sort_length bytes cada
            valor se usan; el resto se ignoran.
          
            max_tmp_tables
          
El número máximo de tablas temporales que un cliente puede mantener abiertas al mismo tiempo. (Esta opción todavía no hace nada.)
            max_user_connections
          
El número máximo de conexiones simultáneas permitidas para cualquier cuenta MySQL dada. Un valor 0 significa ``sin límites.''
            Antes de MySQL 5.0.3, esta variable sólo tenía visibilidad
            global. A partir de MySQL 5.0.3, también tiene visibilidad
            para sesiones de sólo lectura. La variable de sesión tiene
            el mismo valor que la variable global a no ser que la cuenta
            actual tenga un valor diferente a 0 en el límite de
            recursos MAX_USER_CONNECTIONS . En este
            caso, el valor de sesión refleja el límite de la cuenta.
          
            max_write_lock_count
          
Después de varios bloqueos de escritura, permite que algunos bloqueos de lectura se ejecuten en medio.
            multi_read_range
          
            Especifica el máximo número de rangos a enviar a un motor
            de almacenamiento durante la selección de rangos. El valor
            por defecto es 256. Enviar múltiples rangos a un motor es
            una característica que puede mejorar el rendimiento de
            ciertas selecciones dramáticamente, particularmente para
            NDBCLUSTER. Este motor necesita enviar la
            petición de rangos a todos los nodos, y enviar muchas de
            estas peticiones a la vez reduce el coste de comunicación
            significativamente. Esta variable se añadió en MySQL
            5.0.3.
          
            myisam_data_pointer_size
          
            El tamaño por defecto para punteros en bytes, para ser
            usado con CREATE TABLE para tablas
            MyISAM cuando no se especifica la opción
            MAX_ROWS . Esta variable no puede ser
            menor que 2 ni mayor que 7. El valor por defecto es 4.
            Consulte Sección A.2.11, “The table is full”.
          
            (OBSOLETO)
            myisam_max_extra_sort_file_size
          
            Si el fichero temporal usado para índexación rápida
            MyISAM es mayor que usando la key cache
            con la cantidad especificada aquí, se utiliza
            preferentemente el método de la key cache. Esto se usa para
            forzar que las claves largas de caracteres en grandes tablas
            usen el método de de key cache (más lento) para crear el
            índice. Este valor se da en bytes.
          
Nota: Esta variable se eliminó en MySQL 5.0.6.
            myisam_max_sort_file_size
          
            El tamaño máximo para tablas temporales que MySQL permite
            para recrear un índice MyISAM (durante
            REPAIR TABLE, ALTER
            TABLE, o LOAD DATA INFILE). Si
            el tamaño del fichero fuese mayor que este valor, el
            índice se crea usando la key cache en su lugar, lo cual es
            más lento. El valor se da en bytes.
          
            myisam_recover_options
          
            El valor para la opción
            --myisam-recover.
          
            myisam_repair_threads
          
            Si este valor es mayor que 1, los índices de tablas
            MyISAM se crean en paralelo (cada índice
            en su propio thread) durante el proceso Repair by
            sorting . El valor por defecto es 1.
            Nota: Reparación
            multi-threaded repair todavía es código con calidad
            alpha.
          
            myisam_sort_buffer_size
          
            El buffer que se reserva al ordenar índices
            MyISAM durante REPAIR
            TABLE o al crear índices con CREATE
            INDEX o ALTER TABLE.
          
            named_pipe
          
(Sólo en Windows.) Indica si el servidor soporta conexiones sobre named pipes.
            net_buffer_length
          
            El buffer de comunicación se resetea a este tamaño entre
            consultas. Normalmente, debe cambiarse, pero si tiene poca
            memoria, puede inicializarse al tamaño esperado para los
            comandos SQL enviados por los clientes. Si los comandos
            exceden este tamaño, el buffer crece automáticamente,
            hasta max_allowed_packet bytes.
          
            net_read_timeout
          
            El número de segundos a esperar más datos de una conexión
            antes de abortar la lectura. Cuando el servidor está
            leyendo del cliente, net_read_timeout es
            el valor que controla el tiempo máximo para abortar. Cuando
            el servidor está escribiendo en el cliente,
            net_write_timeout es el valor que
            controla el tiempo máximo para abortar. Consulte también
            slave_net_timeout.
          
            net_retry_count
          
Si una lectura en un puerto de comunicaciones se interrumpe, reintenta las veces especificadas antes de abandonar. Este valor debe inicializarse a un valor alto en FreeBSD, ya que las interrupciones internas se envían a todos los threads.
            net_write_timeout
          
            Número de segundos a esperar para que se escriba un bloque
            en una conexión antes de abortar la escritura. Consulte
            también net_read_timeout.
          
            new
          
            Esta variable se usaba en MySQL 4.0 para activar algunos
            comportamientos de la versión 4.1 y se mantiene para
            compatibilidad con versiones anteriores. En MySQL 5.0, el
            valor siempre es OFF.
          
            old_passwords
          
            Si el servidor debe usar contraseñas estilo anterior a la
            versión 4.1 para cuentas de usuario de MySQL. Consulte
            Sección A.2.3, “Client does not support authentication protocol”.
          
            open_files_limit
          
Número de ficheros que el sistema operativo permite abrir mysqld . Este es el valor real permitido por el sistema y puede ser distinto del valor que se da a mysqld al arrancar. El valor es 0 en sistemas donde MySQL puede cambiar el número de ficheros abiertos.
            optimizer_prune_level
          
Controla el heurístico aplicado durante la optimización de consultas para no hacer los planes parciales menos prometedores en el espacio de búsqueda del optimizador. Un valor de 0 desactiva el heurístico de forma que el optimizador realiza una búsqueda exhaustiva. Un valor de 1 provoca que el optimizador elimine planes basados en el número de registros calculados por planes intermedios. Esta variable se añadió en MySQL 5.0.1.
            optimizer_search_depth
          
La máxima profundidad de búsqueda realizada por el optimizador de consultas. Valores mayores que el número de relaciones en una consulta dan como resultado en mejores planes de consulta, pero lleva más tiempo generar un plan de ejecución para una consulta. Los valores menores que el número de relaciones en una consulta retornan un plan de ejecución más rápido, pero el plan resultante puede estar lejos de ser el plan óptimo. Si se usa como valor 0, el sistema automáticamente escoge un valor razonable. Si se asigna como valor el máximo número de tablas usado en una consulta más 2, el optimizador cambia al algoritmo usado en MySQL 5.0.0 ( y versiones anteriores ) para mejorar el rendimiento de las búsquedas. Esta variable se añadió en MySQL 5.0.1.
            pid_file
          
            La ruta al fichero con el ID de proceso (PID). Esta variable
            puede cambiarse con la opción
            --pid-file.
          
            port
          
            El puerto en que escucha el servidor para conexiones TCP/IP.
            Esta variable puede cambiarse con la opción
            --port .
          
            preload_buffer_size
          
El tamaño del buffer que se reserva al pre-cargar los índices.
            protocol_version
          
La versión del protocolo cliente/servidor usado por el servidor MySQL.
            query_alloc_block_size
          
El tamaño de bloques de memoria reservado para objetos creados durante el parseo y ejecución de consultas. Si tiene problemas con fragmentación de memoria, puede ayudar incrementar este valor un poco.
            query_cache_limit
          
No cachea resultados mayores que este número de bytes. El valor por defecto es 1048576 (1MB).
            query_cache_min_res_unit
          
Tamaño mínimo (en bytes) para bloques reservados en la caché de consultas. El valor por defecto es 4096 (4KB). Para más información acerca de optimizar esta variable consulte Sección 5.12.3, “Configuración de la caché de consultas”.
            query_cache_size
          
            La cantidad de memoria reservada para cachear resultados de
            consultas. El valor por defecto es 0, lo que desactiva la
            cache de consultas. Tenga en cuenta que la cantidad de
            memoria se reserva incluso si
            query_cache_type tiene como valor 0.
            Consulte Sección 5.12.3, “Configuración de la caché de consultas” para
            más información.
          
            query_cache_type
          
            Cambia el tipo de la caché de consultas. Cambiando el valor
            GLOBAL se inicializa el tipo para todos
            los clientes que se conecten a partir de ese momento.
            Clientes individuales pueden cambiar el valor
            SESSION para afectar a su propio uso de
            la caché de consultas. Los posibles valores se muestran en
            la siguiente tabla:
          
| Opción | Descripción | 
| 0oOFF | No cachea o retorna los resultados. Tenga en cuenta que esto no elimina
                    el buffer caché para consultas. Para hacerlo, debe
                    asignar 0 a query_cache_size. | 
| 1oON | Cachea todos los resultados de consultas excepto los que empiecen con SELECT SQL_NO_CACHE. | 
| 2oDEMAND | Cachea los resultados sólo para consultas que comiencen con SELECT SQL_CACHE. | 
            En MySQL 5.0, el valor por defecto de esta variable es
            ON.
          
            query_cache_wlock_invalidate
          
            Normalmente, cuando un cliente adquiere un bloqueo
            WRITE en una tabla
            MyISAM , el resto de clientes no se
            bloquean para consultas cuyo resultado esté presente en la
            caché para consultas. Cambiando el valor de esta variable a
            1 provoca que la adquisición de una tabla mediante un
            bloqueo WRITE invalida cualquier consulta
            en la caché de consultas que se refiera a la tabla. Esto
            fuerza a que otros clientes que traten de acceder a la tabla
            esperen mientras el bloqueo esté activo.
          
            query_prealloc_size
          
            El tamaño del buffer persistente usado para parsear y
            ejecutar consultas. Este buffer no se libera entre
            consultas. Si está ejecutando consultas complejas, un valor
            mayor de query_prealloc_size puede ser de
            utilidad para mejorar el rendimiento, ya que puede reducir
            la necesidad del servidor de realizar reserva de memoria
            durante las operaciones de ejecución de consultas.
          
            range_alloc_block_size
          
El tamaño de los bloques que se reservan en la optimización de rango.
            read_buffer_size
          
Cada thread que realiza un escaneo secuencial reserva un buffer de su tamaño (en bytes) para cada tabla que escanea. Si realiza muchos escaneos secuenciales, puede incrementar este valor, que por defecto es 131072.
            read_only
          
            Cuando una variable tiene el valor ON
            para un servidor esclavo de replicación, esto causa que el
            esclavo no permita actualizaciones excepto de threads de
            esclavos o de usuarios con el privilegio
            SUPER. Esto puede ser útil para asegurar
            que un servidor esclavo no acepte actualizaciones de los
            clientes.
          
            relay_log_purge
          
Desactiva o activa el purgado automático de los relay logs tan pronto como no se necesitan. El valor por defecto es 1 (activado).
            read_rnd_buffer_size
          
            Cuando se leen registros ordenadamante tras una ordenación,
            los registros se leen a través de su buffer para evitar
            búsquedas en disco. Asignar a esta variable un valor mayor
            puede mejorar mucho el rendimiento de ORDER
            BY. Sin embargo, hay un buffer para cada cliente,
            así que no debe asignar un valor grande a la variable
            global. En lugar de ello, cambie la variable de sesión
            sólo en los clientes que necesiten ejecutar grandes
            consultas.
          
            secure_auth
          
            Si el servidor MySQL ha arrancado con la opción
            --secure-auth , bloquea conexiones de
            todas las cuentas que tengan las contraseñas almacenadas en
            el formato antiguo (anterior a 4.1). En ese caso, el valor
            de esta variable es ON, en el contrario
            es OFF.
          
Debe activar esta opción si quiere evitar todo uso de contraseñas en el viejo formato (y por lo tanto comunicación insegura en la red).
            El arranque del servidor falla con un error si esta opción
            está activada y la tablas de privilegios están en formato
            anterior a 4.1. Consulte Sección A.2.3, “Client does not support authentication protocol”.
          
Cuando se usa como una opción del lado del cliente, el cliente rehúsa conectar a un servidor si el servidor requiere contraseña en el viejo formato para la cuenta del cliente.
            server_id
          
            El valor de la opción --server-id . Se
            usa para servidores de replicación maestros y esclavos.
          
            shared_memory
          
(Sólo en Windows.) Si el cliente permite conexiones a través de memoria compartida o no.
            shared_memory_base_name
          
(Sólo en Windows.) Indica si el servidor permite conexiones a través de memoria compartida, e indica el identificador para memoria compartida. Esto es útil al ejecutar varias instancias de MySQL en una única máquina física.
            skip_external_locking
          
            Está OFF si mysqld
            usa bloqueo externo.
          
            skip_networking
          
            Está ON si el servidor permite sólo
            conexiones locales (no TCP/IP). En Unix, las conexiones
            locales usan un fichero socket de Unix. En Windows, las
            conexiones locales usan named pipes o memoria compartida. En
            NetWare, sólo se soportan conexiones TCP/IP, así que no
            asigne a esta variable el valor ON.
          
            skip_show_database
          
            Evita que se use el comando SHOW
            DATABASES sin tener el privilegio SHOW
            DATABASES . Esto puede mejorar la seguridad si le
            preocupa que los usuarios puedan ver las bases de datos
            pertenecientes a otros usuarios. En MySQL 5.0, su efecto
            depende del privilegio SHOW DATABASES: Si
            el valor de la variable es ON, el comando
            SHOW DATABASES está permitido sólo para
            usuarios que tengan el privilegio SHOW
            DATABASES , y el comando muestra todos los nombres
            de bases de datos. Si el valor es OFF,
            SHOW DATABASES se permite para todos los
            usuarios, pero sólo muestra los nombres de bases de datos
            que el usuario tenga el permiso SHOW
            DATABASES u otros privilegios.
          
            slave_compressed_protocol
          
Si usa compresión en el protocolo maestro/servidor si ambos lo soportan.
            slave_load_tmpdir
          
            El nombre del directorio donde el esclavo crea ficheros
            temporales para replicar el comando LOAD DATA
            INFILE.
          
            slave_net_timeout
          
Número de segundos a esperar para más datos en una conexión maestro/ servidor antes de abortar la lectura.
            slave_skip_errors
          
Los errores de replicación que el esclavo debe dejar pasar (ignorar).
            slow_launch_time
          
            Si la creación de un thread toma más de los segundos
            especificados por esta variable, el servidor incrementa la
            variable de estado Slow_launch_threads .
          
            socket
          
            Plataformas Unix: El fichero socket
            usado para conexiones clientes locales. Por defecto
            /var/lib/mysql/mysql.sock.
          
            Windows: El nombre del named pipe usado
            para conexiones cliente locales. Por defecto
            mysql.
          
            sort_buffer_size
          
            Cada thread que necesita una ordenación reserva un buffer
            de su tamaño. El incremento de este valor permite acelerar
            las operaciones ORDER BY o GROUP
            BY . Consulte Sección A.4.4, “Dónde almacena MySQL los archivos temporales”.
          
            sql_mode
          
El modo del servidor SQL, que en MySQL 5.0 puede cambiarse dinámicamente. Consulte Sección 5.3.2, “El modo SQL del servidor”.
            sql_slave_skip_counter
          
El número de eventos del maestro que el servidor esclavo debe ignorar.
            storage_engine
          
            Esta variable es un sinónimo de
            table_type. En MySQL 5.0,
            storage_engine es el nombre preferido.
          
            sync_binlog
          
            Si es positivo, el servidor MySQL sincroniza su log binario
            a disco (fdatasync()) después de cada
            escritura sync_binlog en su log binario.
            Tenga en cuenta que sólo hay una escritura en el log
            binario por comando si está en modo autocommit, y de otra
            forma una escritura por transacción. El valor por defecto
            es 0 lo que no sincroniza con disco. Un valor de 1 es la
            elección más segura, ya que en caso de error se pierden
            como mucho un comando/transacción del log binario; de todas
            formas, también es el valor más bajo (a no ser que el
            disco tenga una caché de batería, lo que hace la
            sincronización muy rápida).
          
            sync_frm
          
            Si esta variable se asigna a 1, cuando se crea una tabla no
            temporal su fichero .frm se sincroniza
            a disco (fdatasync()); esto es lo más
            lento pero más seguro en caso de un error. El valor por
            defecto es 1.
          
            system_time_zone
          
            La zona horaria del servidor. Cuando el servidor comienza la
            ejecución, hereda unos valores de zona horaria de los
            valores por defecto de la máquina, posiblemente modificados
            por el entorno de la cuenta usado para ejecutar el servidor
            o el script de arranque. El valor se usa para asignar
            system_time_zone. Normalmente la zona
            horaria se especifica con la variable de entorno
            TZ. También puede especificarse usando
            la opción --timezone del script
            mysqld_safe .
          
            table_cache
          
            El número de tablas abiertas por todos los threads.
            Incrementar este valor incrementa el número de descriptores
            de ficheros que requiere mysqld . Puede
            chequear si necesita incrementar la caché de la tabla
            chequeando la variable de estado
            Opened_tables . Consulte
            Sección 5.3.4, “Variables de estado del servidor”. Si el valor de
            Opened_tables es grande y no quiere hacer
            muchos FLUSH TABLES (lo que fuerza a
            cerrar y reabrir todas las tablas), entonces debe
            incrementar el valor de la variable
            table_cache .
          
Para más información sobre la cache de la tabla, consulte Sección 7.4.8, “Cómo abre y cierra tablas MySQL”.
            table_type
          
            El tipo de tabla por defecto (motor de almacenamiento). Para
            cambiar el tipo de tabla en el arranque del servidor, use la
            opción --default-table-type. Consulte
            Sección 5.3.1, “Opciones del comando mysqld”.
          
            thread_cache_size
          
            El número de threads que el servidor debe cachear para
            reusar. Cuando un cliente desconecta, los threads de
            clientes se ponen en la caché si hay menos de
            thread_cache_size threads. Peticiones de
            threads se sirven reusando threads tomados de la caché
            cuando es posible. Esta variable puede incrementarse para
            mejorar el rendimiento si tiene muchas nuevas conexiones.
            (Normalmente esto no da una mejora notable de rendimiento si
            tiene una buena implementación de threads.) Mediante el
            estudio de las diferencias entre las variables de estado
            Connections y
            Threads_created (consulte
            Sección 5.3.4, “Variables de estado del servidor” para más
            detalles) puede ver lo eficiente que es la caché de
            threads.
          
            thread_concurrency
          
            En Solaris, mysqld llama a
            thr_setconcurrency() con este valor. Esta
            función permite a las aplicaciones dar al sistema de
            threads una piesta sobre el número deseado de threads que
            deben ejecutarse simultáneamente.
          
            thread_stack
          
            El tamaño de la pila para cada thread. Muchos de los
            límites detectados por el test crash-me
            dependen de este valor. El valor por defecto es lo
            suficientemente grande para un funcionamiento normal.
            Consulte Sección 7.1.4, “El paquete de pruebas de rendimiento (benchmarks) de MySQL”.
          
            time_zone
          
            La zona horaria. El valor inical de este
            'SYSTEMA' (usa el valor de
            system_time_zone), pero puede
            especificarse explícitamente al arrancar el servidor con la
            opción --default-time-zone .
          
            tmp_table_size
          
            Si una tabla temporal en memoria excede este tamaño, MySQL
            la convierte automáticamente en una tabla en disco de tipo
            MyISAM. Incremente el valor de
            tmp_table_size si realiza muchas
            consultas avanzadas GROUP BY y tiene
            mucha memoria disponible.
          
            tmpdir
          
            El directorio usado para ficheros y tablas temporales. Esta
            variable puede tomar una lista de diferentes paths usados
            con una política round-robin. Estos paths pueden separarse
            mediante dos puntos (':') en Unix y punto
            y coma (';') en Windows, NetWare, y OS/2.
          
            Esta característica puede usarse para repartir la carga
            entre varios discos físicos. Si el servidor MySQL actúa
            como un esclavo de replicación, no debe asignar
            tmpdir un valor que apunte a un
            directorio en un sistema de ficheros en memoria o a un
            directorio que se borre cada vez que el servidor reinicie.
            Un esclavo de replicación necesita que algunos de sus
            ficheros temporales sobrevivan a un reinicio de servidor de
            forma que pueeda replicar tablas temporales u operaciones
            LOAD DATA INFILE . Si los ficheros en un
            directorio de ficheros temporales se pierden cuando reinicia
            el servidor, la replicación falla.
          
            transaction_alloc_block_size
          
El tamaño reservado (en bytes) de bloques de memoria que se reservan para almacenar consultas que son partes de una transacción que debe ser guardad en el log binario al hacer un commit.
            transaction_prealloc_size
          
            Tamaño en bytes del buffer persistente para
            transaction_alloc_blocks que no se libera
            entre consultas. Haciéndolo lo suficientemente grande para
            guardar todas las consultas dentro de una única
            transacción, puede evitar varias llamadas
            malloc() .
          
            tx_isolation
          
            El nivel de aislamiento de transacción por defecto. Por
            defecto es REPEATABLE-READ.
          
            updatable_views_with_limit
          
            Esta variable controla si las actualizaciones pueden hacerse
            usando una vista que no contenga una clave primária en la
            tabla subyacente, si la actualización contiene una
            cláusula LIMIT . (Tales actualizaciones
            normalmente las generan herramientas GUI.) Una
            actualización es un comando UPDATE o
            DELETE.Clave primaria se refiere a un
            índice PRIMARY KEY, o
            UNIQUE en el que ninguna columna puede
            contener NULL.
          
La variable puede tener dos valores:
                1 o YES: Muestra
                sólo una advertencia (no un mensaje de error). Este es
                el valor por defecto.
              
                0 o NO: Prohibe la
                actualización.
              
Esta variable se añadió en MySQL 5.0.2.
            version
          
El número de versión para el servidor.
            version_bdb
          
            La versión del motor de almacenamiento
            BDB.
          
            version_comment
          
            El script configure tiene una opción
            --with-comment que permite especificar un
            comentario al compilar MySQL. Esta variable contiene el
            valor de dicho comentario.
          
            version_compile_machine
          
El tipo de máquina o arquitectura en el que se compiló MySQL.
            version_compile_os
          
El tipo de sistema operativo en el que se compiló MySQL.
            wait_timeout
          
Número de segundos que el servidor espera para recibir actividad en una conexión no interactiva antes de cerrarla.
            En el arranque de un thread, el valor de la variable de
            sesión wait_timeout se inicializa de la
            variable global wait_timeout o de
            interactive_timeout , dependiendo del
            tipo de cliente (como se define en la opción de conexión
            CLIENT_INTERACTIVE de
            mysql_real_connect()). Consulte también
            interactive_timeout.
          
É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 mysql-es@vespito.com.

