5.1. 先安装需要用到的库:
# yum -y install gcc gcc-c++
# yum -y install ncurses-devel
5.2. 下载所需软件包:
将下载的文件都放到
/usr/local/src目录下
# cd /usr/local/src
# wget http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz
# wget http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz
# wget http://ftp.gnu.org/gnu/m4/m4-1.4.16.tar.gz
# wget http://www.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.10.tar.gz/from/http://cdn.mysql.com/
5.3. 安装cmake编译器
# tar zxvf cmake-2.8.7.tar.gz
# cd cmake-2.8.7
# ./bootstrap
# make && make install
5.4. 安装m4
# cd m4-1.4.16
# ./configure
# make
# make install
5.5. 安装bison
# tar zxvf bison-2.5.tar.gz
# cd bison-2.5
# ./configure
# make && make install
5.6. Mysql数据库的安装
我们这里下载使用的版本为MySQL社区服务器版本,注意md5值及大小。
MD5: 9dcee911fb4bc7e977a6b63f4d3ffa63
Size: 33.5M
Mysql安装包,前面已经下载完成。执行如下操作命令即可:
# /usr/sbin/groupadd mysql
# /usr/sbin/useradd -g mysql mysql
# tar xvf mysql-5.6.10.tar.gz
# cd mysql-5.6.10
# mkdir /data0/mysql-3307 -p
# mkdir /data0/mysql-3307/data -p
# cmake
-DCMAKE_INSTALL_PREFIX=/data0/mysql-3307 \
-DMYSQL_UNIX_ADDR=/data0/mysql-3307
/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DMYSQL_DATADIR=/data0/mysql-3307
/data \
-DMYSQL_TCP_PORT=3307\
-DMYSQL_USER=root //mysql-5.6.10版本取消此选项,否则编译会报错
# make && make install
# cd /data0/mysql-3307
# ./scripts/mysql_install_db
--user=mysql
--ldata=/data0/mysql-3307/data/
--explicit_defaults_for_timestamp
# mkdir dbdata
将准备好的my-3307.cnf放到/data0/mysql-3307目录下:
# cd /data0/mysql-3307
# rz my-3307.cnf
将mysqld_safe_3307改名为mysqld_safe并替换掉/data0/mysql-3307/bin下的mysqld_safe
# cd /data0/mysql-3307/bin
# rz mysqld_safe_3307
# mv mysqld_safe_3307 mysqld_safe
# chmod +x mysqld_safe
将目录/data0/mysql-3307授权给mysql用户:
#cd ..
#chown -R mysql.mysql mysql-3307
在文件~/.bashrc的最后添加如下三行:
#vi ~/.bashrc
alias mysql3307_start="/data0/mysql-3307/bin/mysqld_safe --defaults-file=/data0/mysql-3307/my-3307.cnf -P 3307 -umysql&"
alias mysql3307_stop="/data0/mysql-3307/bin/mysqladmin -S /data0/mysql-3307/mysql.sock -P 3307 shutdown"
alias mysql3307="/data0/mysql-3307/bin/mysql -S /data0/mysql-3307/mysql.sock"
#source ~/.bashrc
在文件/etc/profile最后添加如下内容:
#echo "export PATH=/data0/mysql-3307/bin:/usr/bin:/sbin:\$PATH">>/etc/profile
#source /etc/profile
以后, 输入 mysql3307_start 时,就可以启动数据库;输入 mysql3307_stop 时,就可以关闭数据库;
输入 mysql3307 时,就直接进行相应的数据库中.
随系统服务器启动的时启动数据库,可以通过如下操作:
# vi /etc/rc.local
在最下面添加如下内容
/data0/mysql-3307
/bin/mysqld_safe --defaults-file=/data0/mysql-3307
/my-3307.cnf -umysql&
此时,就可以进行启动和关闭数据的操作了。
启动数据库:
# mysql3307_start
关闭数据库:
# mysql3307_stop
6.1. 启动数据库时,报如下错误:
# mysql -S /data0/mysql-3307/mysql.sock
mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
解决方法:
[root@tcdb1 bin]# yum install libncurses.so.5 Installing:ncurses-libs-5.7-3.20090208.el6.i686
1/1
Installed:
ncurses-libs.i686 0:5.7-3.20090208.el6
Complete!
[root@tcdb1 bin]# ldd mysql
linux-gate.so.1 => (0x007bf000)
libncurses.so.5 => /lib/libncurses.so.5 (0x009e0000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00bf4000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0x006e9000)
libnsl.so.1 => /lib/libnsl.so.1 (0x00f75000)
libm.so.6 => /lib/libm.so.6 (0x00520000)
libc.so.6 => /lib/libc.so.6 (0x00110000)
libdl.so.2 => /lib/libdl.so.2 (0x00918000)
libtinfo.so.5 => /lib/libtinfo.so.5 (0x0035b000)
/lib/ld-linux.so.2 (0x00b35000)
libfreebl3.so => /lib/libfreebl3.so (0x00ec2000)
6.2. 拷贝远程mysql到本地,启动时报错如下:
# ./bin/mysqld_safe: ./bin/my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
./bin/mysqld_safe: ./bin/my_print_defaults: /lib/ld-linux.so.2: bad ELF interpreter: No such file or directory
nohup: ignoring input and redirecting stderr to stdout
Starting mysqld daemon with databases from /data0/mysql-3307/data
STOPPING server from pid file /data0/mysql-3307/data/fz-app35.pid
120516 15:03:58 mysqld ended
解决办法:
# yum -y install ld-linux.so.2
Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
* base: mirrors.ta139.com
* extras: mirrors.ta139.com
* updates: mirrors.ta139.com
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package glibc.i686 0:2.12-1.47.el6_2.12 set to be updated
--> Processing Dependency: libfreebl3.so(NSSRAWHASH_3.12.3) for package: glibc-2.12-1.47.el6_2.12.i686
--> Processing Dependency: libfreebl3.so for package: glibc-2.12-1.47.el6_2.12.i686
--> Running transaction check
---> Package nss-softokn-freebl.i686 0:3.12.9-11.el6 set to be updated
--> Finished Dependency Resolution Dependencies Resolved
6.3. 安装bison时报错如下:
checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
解决方法:先安装m4后,再进行安装bison即可解决。安装序列不能颠倒。