[原创]使用编译方法安装mysql-4.0.17中遇到的问题与解决方法
平台:solaris 8 sparc 64bit
编译器:gcc 3.3.2
1.安装所需要的基本软件包必须安装,比如:
libtools,automake,autoconf,gcc 3.3.2, libncursess,ncurses等...
2.下载解压mysql-4.0.17-sol8-sparc-64bit.tar.gz(http://www.mysql.com)
3.配置环境和编译
# cd mysql-4.0.17-sol8-sparc-64bit
# CC='gcc' CFLAGS='-DBIG_TABLES -DHAVE_MYSYS_NEW -m64' CXX='gcc' CXXFLAGS='-DBIG_TABLES -DHAVE_MYSYS_NEW -m64' LDFLAGS='-m64' ASFLAGS=''
注意:在很多资料中都有不同的配置方法. 针对 sparc-64bit 的solaris 8中,必需使用以上的配置.
# ./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --libexecdir=/usr/local/mysql/bin --with-comment=Official MySQL-max binary --with-extra-charsets=complex --with-server-suffix=-max --enable-thread-safe-client --enable-local-infile CXX=gcc CFLAGS=-DBIG_TABLES -DHAVE_MYSYS_NEW -m64 CXXFLAGS=-DBIG_TABLES -DHAVE_MYSYS_NEW -m64 LDFLAGS=-m64 --enable-assembler --with-named-z-libs=no --with-named-curses-libs=-lcurses --disable-shared --with-berkeley-db --with-raid --with-embedded-server --with-innodb CC=gcc
注意:上面的./configure 的参数很长,在有的情况下操作系统不支持过长的参数,所以上面的配置可以根据提示去掉一些,我遇到的情况就是这样,为此我去掉了一些不是很必要的参数,修改后如下:
#./configure --prefix=/usr/local/mysql --localstatedir=/usr/local/mysql/data --libexecdir=/usr/local/mysql/bin --with-comment=Official --with-extra-charsets=complex CFLAGS=-DBIG_TABLES -DHAVE_MYSYS_NEW - CXXFLAGS=-DBIG_TABLES --with-embedded-server --with-innodb
注意:在没有按照以上配置时,我编译时候经常遇到很多问题,最为常见的是:找不libncurses.so.5导致编译失败.
4.make
#make
#make install
# ./scripts/mysql_install_db
# chown -R mysql /usr/local/mysql //这里涉及到后面的启动权限的问题,有的资料上是 chown -R root /usr/local/mysql.经过经验实践,我这里采用chown -R mysql /usr/local/mysql
# chown -R mysql /usr/local/mysql/var
# chgrp -R mysql /usr/local/mysql
5.启动mysql
# /usr/local/mysql/bin/mysqld_safe