Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Tablas innodb.¿Como activarlas?
Enviado por cristina el día 17 de febrero de 2006
Tengo instalado el paquete Appserv con la version de Mysql 4.1.12a y no puedo definir tablas del tipo innodb.Me he bajado la versión de mysql 5.0 y tengo el mismo problema.Al utilzar el comando SHOW VARIABLES LIKE \\\'%innodb%\\\' la variable have_innodb está desactivada.¿ como puedo activarla?
CRISTINA, EN LA CARPETA DE INSTALACION DE MYSQL HAY UN ARCHIVO LLAMADO MY.CNF O MY.CONF, EN WINXP SUELE TENER UN ICONO DE CONEXION COMO UNA PC PERO NO TE PREOCUPES ABRELO DESDE UN BLOK DE NOTAS, AHI ESTA LA INFO DE ARRANQUE DEL MOTOR DE MYSQL, UNA VES AHI DEBES BUSCAR LA LINEA QUE DICE #SKIP INNODB Y DESCOMENTARLA ASI COMO LAS LINEAS QUE SIGUEN QUE TIENEN QUE VER CON LA CONFIGURACION INNODB (DESCOMENTARLAS QUITA EL SIGNO # PARA QUE EL ARRANQUE DE MYSQL LAS INTERPRETE) LUEGO GRABA EL ARCHIVO Y REINICIA EL SERVIDOR DE MYSQL........... ESA ES LA FORMA CORRECTA DE ACTIVAR TABLAS INNODB Y NO HAY OTRA PUEDO ASEGURARTELO........... SUERTE CON ESO
Hola! Explico un poco más la respuesta anterior (muy buena, mariobj, gracias!)
En mi caso (instalación vía Xampp en windows XP) hay dos archivos de configuración:
c:\Windows\my.ini (he intentado añadir ahí las líneas referentes a innodb y no me ha hecho ni caso)
c:\xampp\mysql\bin\my (este archivo tiene, efectivamente un PC como icono, y es el que hay que editar)
Pues bien, para abrirlo es necesario arrastrar y soltar hasta una ventana de notepad. (No funciona ni doble clic, ni botón derecho-abrir, ni cambiar la extensión).
Las modificaciones que hay que hacer són: comentar la línea "skip-innodb", descomentar algunas de las líneas que siguen, y añadir "default-storage-engine=innodb" al final (para que innodb sea el sistema por defecto).
La parte del fichero relativa a innodb quedará así (en Xampp, claro):
#skip-innodb
# Uncomment the following if you are using InnoDB tables
innodb_data_home_dir = C:/xampp/mysql/data/
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = C:/xampp/mysql/data/
innodb_log_arch_dir = C:/xampp/mysql/data/
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
set-variable = innodb_buffer_pool_size=16M
set-variable = innodb_additional_mem_pool_size=2M
# Set .._log_file_size to 25 % of buffer pool size
set-variable = innodb_log_file_size=5M
set-variable = innodb_log_buffer_size=8M
innodb_flush_log_at_trx_commit=1
set-variable = innodb_lock_wait_timeout=50
default-storage-engine=innodb
Guardar y reiniciar el servicio mysql. Ahora, al hacer la consulta "show variables like "%innodb" desde mysql, debería mostrar:
have_innodb con el valor YES (antes aparecía como DISABLED)
Si ahora miramos en:
c:\xampp\mysql\data
veremos que hay tres archivos nuevos (si alguna vez tenemos problemas con el funcionamiento del motor innodb, sólo los tenemos que eliminar y reiniciar el servicio mysql). Son estos:
ib_logfile0
ib_logfile1
ibdata1
Gracias por la ayuda.Yo trabajo con Windows 2000 y el fichero que he tenido que modificar ha sido my.ini que se encuentra en la carpeta c:\winnt. He comentado la linea SKIP INNODB y descomentado las siguientes y he conseguido definir las tablas INNODB.
Tengo un pqñ problema y es que estoy trabajando con el appserv 2.5.5 que contiene Mysql 5.1.16 , quiero activar la variable have_innodb y he hecho lo que ustedes sugieren aqui, pero nada que se activa... me gustaría que me enviarán una copia de este archivo de configuración pues ustedes hablan de unas lineas siguientes y yo en este archivo no veo nada..... GRACIAS
Por fin!!! Llevo 3 días intentando activar las tablas inndb!!!! solo te falta q no hay q descomentar la linea skip innodb....pero lo dicen un poco mas abajo, muchas gracias
Cristina a ti te ayudaron ..... y contestas asi?
tambien eres una de esas q piden y piden q otros trabajen por ti no? eso se llama colaboracion! y ahora q alguien necesita ayuda lo recriminas? el ha dicho q lo ha puesto tal cual