Diferencia entre revisiones de «Instalar MySQL»

De BandaAncha.EU
Saltar a: navegación, buscar
m
m (Proceso)
Línea 21: Línea 21:
 
  useradd -g mysql mysql
 
  useradd -g mysql mysql
 
  # bajamos fuentes
 
  # bajamos fuentes
  wget ftp://ftp.mysql.com/pub/mysql/src/mysql-5.0.36.tar.gz
+
  wget <nowiki>ftp://ftp.mysql.com/pub/mysql/src/mysql-5.0.36.tar.gz</nowiki>
 
  # descomprimimos
 
  # descomprimimos
 
  tar -zxvf mysql-5.0.36.tar.gz
 
  tar -zxvf mysql-5.0.36.tar.gz

Revisión del 14:31 28 may 2007

Objetivos

Instalar MySQL desde los fuentes para poder disponer de la última versión.

Si voy a downloads de mysql.com la última versión disponible es la 5.0.27. Sin embargo en ftp.mysql.com veo que estan disponibles algunas versiones más recientes, como la 5.0.36

Bug en la 5.0.36

He instalado la 5.0.36 y el demonio mysqld se comporta de forma extraña. He tenido que instalar la 5.0.34 con la que todo ha funcionado correctamente.

Pasos previos

Me ha hecho falta un compilador de C++

yum install gcc-c++

Proceso

# añadimos grupo y usuario mysql
groupadd mysql
useradd -g mysql mysql
# bajamos fuentes
wget ftp://ftp.mysql.com/pub/mysql/src/mysql-5.0.36.tar.gz
# descomprimimos
tar -zxvf mysql-5.0.36.tar.gz
# configuramos fuentes
cd mysql-5.0.36
CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" \
./configure \
	--prefix=/usr/local/mysql \
	--enable-assembler \
	--with-mysqld-ldflags=-all-static
# compilamos
make
# instalamos
make install
# copiamos el my.cnf por defecto
cp support-files/my-medium.cnf /etc/my.cnf
# creamos MySQL grant tables
cd /usr/local/mysql
bin/mysql_install_db --user=mysql
# en este punto con la 5.0.36 me daba "error in my_thread_global_end(): 1 threads didn't exit"
# asignamos permisos
chown -R root .
chown -R mysql var
chgrp -R mysql .
# arrancamos mysql
/usr/local/mysql/bin/mysqld_safe --user=mysql &
# ponemos pass de root
bin/mysqladmin -u root password 'new-password'
bin/mysqladmin -u root -h levitico.vectrice.com password 'new-password'
# configurar script de inicio en el arranque
#support-files/mysql.server

Arrancar y parar mysqld

Arrancar

/usr/local/mysql/bin/mysqld_safe --user=mysql &

o

/etc/init.d/mysql start

Parar

/usr/local/mysql/bin/mysqladmin shutdown

o

/etc/init.d/mysql stop

Iniciando y parando MySQL automáticamente

cp support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
chkconfig --add mysql