Cuando se tienen bases de datos muy grandes, me refiero a unos 15 millones de datos o mas, mysql empieza a bajar el rendimiendo, claro esta que esto depende del servidor donde este corriendo mysql, para solucionar esto podemos usar
infobright esta base de datos es un mysql optimizado y aqui te muestro como instalarlo en
ubuntu
Para este tutorial se utilizaron los siguientes archivos
infobright-3.5.2-p1-i686-ice.deb
ubuntu server 10.10
Lo primero es instalar lo esencial para compilar
sudo apt-get install build-essential
Lo segundo que tienes que hacer este instalar el servidor nscd
sudo apt-get install nscd
abrir con el editor de texto que tu quieras el archivo /etc/nscd.conf
buscar la linea que dice
enable-cache hosts no
y cambiar el no por un yes
enable-cache hosts yes
reiniciar el servicio
sudo service nscd restart
despues vaz a la pagina de
infobright y bajas el .deb
cuando instales el .deb no tienes que estar en las carpetas de /home/ /home/usuario/ /home/usuario/desktop/ ni /root en mi caso lo movi a /opt
sudo cp infobright.deb /opt/
le di permisos
sudo chmod 777 -R infobright.deb
y lo instale
sudo dpkg -i infobright.deb
despues se tiene que activar ICE (infobright comunity edition)
entramos a la siguiente ruta
cd /usr/local/infobright/
ejecutamos el script
sudo sh postconfig.sh
nos pedira que nos registremos, le decimos que no y volvemos a correr el script
sudo sh postconfig.sh
aqui nos dira si queremos cambiar algunos parametros como es el puerto y la carpeta de data y a todos les decimos que no, con esto queda activado ICE.
arrancamos el servidor de base de datos
sudo /etc/init.d/mysqld-ib start
despues le le ponemos password al usuario root
/usr/local/infobright-3.5.2-i686/bin/mysqladmin -u root password 'new-password'
accedemos a la base de datos
/usr/bin/mysql-ib -uroot -p
ponemos nuestro password y con eso ya estamos en el 90% de la instalacion
el archivo de configuracion se encuentra en
/etc/my-ib.cnf
a este archivo al ultimo le ponemos estas tres lineas
skip-host-cache
skip-name-resolve
bind-address=0.0.0.0
Posibles problemas
Access denied for user: 'root@localhost' (Using password: NO)
Para solucionar esto tienes que entrar a mysql
de la base de datos mysql y de la tabla user tienes que insertar lo siguente
use mysql
insert into user (host,user) values ('%', 'root');
despues le tenemos que poner password
update user set password=PASSWORD('elPassword') where user = 'root';
se le tiene que dar permisos
GRANT ALL ON *.* TO 'root'@'%';
con esto todo el que accede tiene permisos de hacer lo que quiera si se loguea como root
por ultimo ponemos esto
flush privileges;
reinicias el servidor y listo
sudo /etc/init.d/mysqld-ib restart