O MySQL exige a versão 5.4.12 ou mais nova da
libc
. Sabe-se que funciona com a
libc
5.4.46. A versão 2.0.6 e posterior da
glibc
também deve funcionar. Existem
alguns problemas com os RPMs glibc
da
RedHat, portanto se você tiver problemas, confira se existe
alguma atualização! Sabemos que os RPMs
glibc
2.0.7-19 e 2.0.7-29 funcionam.
Se você estiver usando o Red Hat 8.0 ou uma nova biblioteca
glibc
2.2.x, você deve iniciar o
mysqld
com a opção
--thread-stack=192K
(Use -O
thread_stack=192K antes do MySQL 4
). Se você não
fizer isto o mysqld
finlizará em
gethostbyaddr()
porque a nova biblioteca
glibc exige mais de 128K de memória na pilha para esta
chamada. Este tamanho de pilha é o padrão agora no MySQL
4.0.10 e acima.
Se você está usando o gcc
3.0 e acima
para compilar o MySQL, você deve instalar a biblioteca
libstdc++v3
antes de compilar o MySQL; se
você não fizer isto, você obterá um erro sobre um símbolo
__cxa_pure_virtual
perdido durante a
ligação.
Em algumas distribuições Linux mais antigas,
configure
pode produzir um erro como este:
Syntax error in sched.h. Change _P to __P in the /usr/include/sched.h file. See the Installation chapter in the Reference Manual.
Faça apenas o que a mensagem de erro diz e adicione um
caractere sublinhado para a macro _P
que
tem somente um caractere sublinhado e então tente novamente.
Você pode obter alguns aviso quando estiver compilando; os mostrados abaixo podem ser ignorados:
mysqld.cc -o objs-thread/mysqld.o mysqld.cc: In function `void init_signals()': mysqld.cc:315: warning: assignment of negative value `-1' to `long unsigned int' mysqld.cc: In function `void * signal_hand(void *)': mysqld.cc:346: warning: assignment of negative value `-1' to `long unsigned int'
O mysql.server
pode ser encontrado no
diretório share/mysql
sob o diretório
de instalação MySQL ou no diretório
support-files
da árvore fonte MySQL.
Se o mysqld
sempre descarregar um core na
inicialização, o problema pode ser que você tenha um antigo
/lib/libc.a
. Tente renomeá-lo depois
remova sql/mysqld
e faça um novo
make install
e tente novamente. Este
problema foi relatado em algumas instalações Slackware.
Se você obter o seguinte erro quando ligar o
mysqld
, significa que seu
libg++.a
não está instalado
corretamente:
/usr/lib/libc.a(putc.o): In function `_IO_putc': putc.o(.text+0x0): multiple definition of `_IO_putc'
Você pode evitar o uso de libg++.a
executando configure
desta forma:
shell> CXX=gcc ./configure
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.