Diferencia entre revisiones de «Instalar MySQL»

De Wiki de BandaAncha.eu
Saltar a: navegación, buscar
Línea 1: Línea 1:
 +
==Objetivos==
 +
 +
Instalar MySQL desde los fuentes para poder disponer de la última versión.
 +
 
Si voy a [http://dev.mysql.com/downloads/mysql/5.0.html downloads de mysql.com] la última versión disponible es la 5.0.27. Sin embargo en [ftp://ftp.mysql.com/pub/mysql/src/ ftp.mysql.com] veo que estan disponibles algunas versiones más recientes, como la 5.0.36
 
Si voy a [http://dev.mysql.com/downloads/mysql/5.0.html downloads de mysql.com] la última versión disponible es la 5.0.27. Sin embargo en [ftp://ftp.mysql.com/pub/mysql/src/ 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==
 
==Pasos previos==
 +
 +
Me ha hecho falta un compilador de C++
  
 
  yum install gcc-c++
 
  yum install gcc-c++
  
 +
==Proceso==
  
 
+
# añadimos grupo y usuario mysql
 
  groupadd mysql
 
  groupadd mysql
 
  useradd -g mysql mysql
 
  useradd -g mysql mysql
 +
# bajamos fuentes
 
  wget ftp://ftp.mysql.com/pub/mysql/src/mysql-5.0.36.tar.gz
 
  wget ftp://ftp.mysql.com/pub/mysql/src/mysql-5.0.36.tar.gz
 +
# descomprimimos
 
  tar -zxvf mysql-5.0.36.tar.gz
 
  tar -zxvf mysql-5.0.36.tar.gz
 +
# configuramos fuentes
 
  cd mysql-5.0.36
 
  cd mysql-5.0.36
 
  CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" \
 
  CFLAGS="-O3" CXX=gcc CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti" \
Línea 17: Línea 31:
 
  --enable-assembler \
 
  --enable-assembler \
 
  --with-mysqld-ldflags=-all-static
 
  --with-mysqld-ldflags=-all-static
 +
# compilamos
 
  make
 
  make
 +
# instalamos
 
  make install
 
  make install
 
  # copiamos el my.cnf por defecto
 
  # copiamos el my.cnf por defecto
Línea 23: Línea 39:
 
  # creamos MySQL grant tables
 
  # creamos MySQL grant tables
 
  cd /usr/local/mysql
 
  cd /usr/local/mysql
 
 
  bin/mysql_install_db --user=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 root .
 
  chown -R mysql var
 
  chown -R mysql var
 
  chgrp -R mysql .
 
  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
 
  # configurar script de inicio en el arranque
 
  #support-files/mysql.server
 
  #support-files/mysql.server
  
PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
+
==Arrancar y parar mysqld==
To do so, start the server, then issue the following commands:
 
/usr/local/mysql/bin/mysqladmin -u root password 'new-password'
 
/usr/local/mysql/bin/mysqladmin -u root -h levitico.vectrice.com password 'new-password'
 
See the manual for more instructions.
 
 
 
You can start the MySQL daemon with:
 
cd /usr/local/mysql ; /usr/local/mysql/bin/mysqld_safe &
 
 
 
You can test the MySQL daemon with the benchmarks in the 'sql-bench' directory:
 
cd sql-bench ; perl run-all-tests
 
 
 
 
 
ps aux
 
kill -9 [pid]
 
 
 
==Arrancar y parar==
 
  
 
Arrancar
 
Arrancar

Revisión del 15:36 6 mar 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 &

Parar

/usr/local/mysql/bin/mysqladmin shutdown