系统环境:

[root@zhaochj ~]# cat /etc/issue
CentOS release 6.4 (Final)
Kernel \r on an \m

[root@zhaochj ~]# uname -r
2.6.32-358.el6.x86_64
[root@zhaochj ~]# ifconfig | grep Bcast:
          inet addr:192.168.0.200  Bcast:192.168.0.255  Mask:255.255.255.0

所使用软件包(这里获取:http://pan.baidu.com/s/1jG3jA5K):

[root@zhaochj mysql5.5]# pwd
/root/software/mysql5.5
[root@zhaochj mysql5.5]# ls
mysql-5.5.33-linux2.6-x86_64.tar.gz

安装依赖包libbaio-devel:

[root@zhaochj mysql5.5]# yum -y install libaio-devel #不安装此包在初始化数据库是会报错

准备mysql用户:

[root@zhaochj mysql5.5]# useradd -r mysql   #建立为系统用户,只用来启动mysql服务。
[root@zhaochj mysql5.5]# id mysql
uid=498(mysql) gid=498(mysql) groups=498(mysql)

准备数据目录:

[root@zhaochj mysql5.5]# mkdir /MysqlData
[root@zhaochj mysql5.5]# chown -R mysql:mysql /MysqlData
[root@zhaochj mysql5.5]# ls -ld /MysqlData/
drwxr-xr-x. 2 mysql mysql 4096 Jan 18 17:09 /MysqlData/

注:建议把mysql数据目录放在LVM上。


解压缩文件,准备目录、设置目录权限:

[root@zhaochj mysql5.5]# tar xf mysql-5.5.33-linux2.6-x86_64.tar.gz -C /usr/local/
[root@zhaochj mysql5.5]# ln -sv /usr/local/mysql-5.5.33-linux2.6-x86_64 /usr/local/mysql # /usr/local/mysql这个目录名不要改变,否则要去修改mysql服务的启动脚本
[root@zhaochj mysql5.5]# chown -R root:mysql /usr/local/mysql/*

准备配置文件及服务脚本文件:

[root@zhaochj mysql]# pwd
/usr/local/mysql
[root@zhaochj mysql]# cp /etc/my.cnf /etc/my.cnf.back  #备份系统原有的my.cnf文件
[root@zhaochj mysql]# cp support-files/my-huge.cnf /etc/my.cnf
cp: overwrite `/etc/my.cnf'? y
[root@zhaochj mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@zhaochj mysql]# chkconfig --add mysqld
[root@zhaochj mysql]# chkconfig --list mysqld
mysqld         	0:off	1:off	2:on	3:on	4:on	5:on	6:off

修改配置文件:

[root@zhaochj mysql]# vim /etc/my.cnf
thread_concurrency = 8     #建议修改这个值为cpu核心的两倍
datadir = /MysqlData       #增加数据目录
innodb_file_per_table = 1  #让每个表有一个文件

初始化数据库:

[root@zhaochj mysql]# scripts/mysql_install_db --user=mysql --datadir=/MysqlData
[root@zhaochj mysql]# ls /MysqlData/
mysql  mysql-bin.000001  mysql-bin.000002  mysql-bin.index  performance_schema  test

启动mysql:

[root@zhaochj mysql]# service mysqld start
Starting MySQL.... SUCCESS!

导出二进制文件(不是必须操作):

[root@zhaochj mysql]# vim /etc/profile.d/mysql5.5.sh
export PATH=/usr/local/mysql/bin:$PATH
[root@zhaochj mysql]# source /etc/profile.d/mysql5.5.sh

导出库文件(不是必须操作):

[root@zhaochj mysql]# echo "/usr/local/mysql/lib" > /etc/ld.so.conf.d/mysql5.5.conf
[root@zhaochj mysql]# ldconfig -v | grep mysql
/usr/local/mysql/lib:
	libmysqlclient.so.18 -> libmysqlclient_r.so.18.0.0
/usr/lib64/mysql:
	libmysqlclient.so.16 -> libmysqlclient.so.16.0.0
	libmysqlclient_r.so.16 -> libmysqlclient_r.so.16.0.0

导出头文件(不是必须操作):

[root@zhaochj mysql]# ln -sv /usr/local/mysql/include /usr/include/mysql5.5

导出man文件(不是必须操作):

[root@zhaochj mysql]# vim /etc/man.config
MANPATH /usr/man
MANPATH /usr/share/man
MANPATH /usr/local/man
MANPATH /usr/local/share/man
MANPATH /usr/X11R6/man
MANPATH /usr/local/mysql/man   #新增加此行

mysql连接测试:

[root@zhaochj mysql]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.5.33-log MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

完!