一、源码编译安装mysql-5.5.33:

1、为mysql的数据存放专门准备一个磁盘的一个分区,并使其自动挂载到/mydata目录:

[root@www ~]# tail -1 /etc/fstab
/dev/sdb1               /mydata                 ext4    defaults        0 0

2、编译mysql-5.5.33需要使用cmake工具,所以先得安装cmake:

[root@www Packages]# yum -y install cmake-2.6.4-5.el6.x86_64.rpm

3、由于在编译mysql的时候会选择编译readline,zlib,ssl功能,所以先得安装这些库的依赖包:

[root@www Packages]# yum -y install readline-devel-6.0-4.el6.x86_64.rpm  zlib-devel-1.2.3-29.el6.x86_64.rpm  openssl-devel-1.0.1e-15.el6.x86_64.rpm

4、创建mysql用户和mysql组,并指定其家目录为/mydata/data,然后在/mydata下面创建data目录,把data目录作为mysql的数据存放目录:

[root@www ~]# groupadd -r -g 306 mysql
[root@www ~]# useradd -g mysql -u 306 -r -d /mydata/data mysql
[root@www ~]# mkdir /mydata/data

5、解压mysql的源码包:

[root@www ~]# tar xf mysql-5.5.33.tar.gz

6、使用cmake工具编译并安装mysql:

[root@www ~]# cd mysql-5.5.33
[root@www mysql-5.5.33]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/mydata/data -DSYSCONFDIR=/etc -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_ZLIB=system -DWITH_LIBWRAP=0 -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci


[root@www mysql-5.5.33]# make



[root@www mysql-5.5.33]
# make install

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql

mysql服务器的安装路径
-DMYSQL_DATADIR=/mydata/datamysql的数据存放目录
-DSYSCONFDIR=/etc
mysql的主配置文件放置路径

-DWITH_INNOBASE_STORAGE_ENGINE=1

-DWITH_ARCHIVE_STORAGE_ENGINE=1

-DWITH_BLACKHOLE_STORAGE_ENGINE=1

-DWITH_READLINE=1

指定要安装的存储引擎

-DWITH_READLINE=1

-DWITH_SSL=system

-DWITH_ZLIB=system

-DWITH_LIBWRAP=0

指定要安装的readline、SSL、zlib功能
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock
unix-sock文件位置
-DDEFAULT_CHARSET=utf8默认的字符集为utf8
-DDEFAULT_COLLATION=utf8_general_ci
指定默认的排序方式

7、更改mysql安装路径下的所有文件的属主为root,属组为mysql:

[root@www ~]# cd /usr/local/mysql/
[root@www mysql]# chown -R root:mysql ./*
[root@www mysql]# ll
total 200
drwxr-xr-x  2 root mysql   4096 Apr 14 21:09 bin
-rw-r--r--  1 root mysql  17987 Jul 15  2013 COPYING
drwxr-xr-x  3 root mysql   4096 Apr 14 21:08 data
drwxr-xr-x  2 root mysql   4096 Apr 14 21:07 docs
drwxr-xr-x  3 root mysql   4096 Apr 14 21:07 include
-rw-r--r--  1 root mysql 134493 Jul 15  2013 INSTALL-BINARY
drwxr-xr-x  3 root mysql   4096 Apr 14 21:08 lib
drwxr-xr-x  4 root mysql   4096 Apr 14 21:09 man
drwxr-xr-x 10 root mysql   4096 Apr 14 21:09 mysql-test
-rw-r--r--  1 root mysql   2496 Jul 15  2013 README
drwxr-xr-x  2 root mysql   4096 Apr 14 21:09 scripts
drwxr-xr-x 27 root mysql   4096 Apr 14 21:09 share
drwxr-xr-x  4 root mysql   4096 Apr 14 21:09 sql-bench
drwxr-xr-x  3 root mysql   4096 Apr 14 21:09 support-files

8、更改mysql的数据存放目录的属主属组都为mysql:

[root@www mysql]# chown -R mysql.mysql /mydata/data/

9、以mysql用户的身份来初始化mysql服务器,并指定mysql的数据存放目录为/mydata/data:

[root@www mysql]# scripts/mysql_install_db --user=mysql --datadir=/mydata/data/

10、提供mysql的服务脚本,使脚本mysqld有执行权限,并加入系统服务,让其开机自启动:

[root@www mysql]# pwd
/usr/local/mysql
[root@www mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@www mysql]# chmod +x /etc/rc.d/init.d/mysqld
[root@www mysql]# chkconfig --add mysqld
[root@www mysql]# chkconfig mysqld on
[root@www mysql]# chkconfig --list mysqld
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off

11、为mysql提供主配置文件,然后编辑主配置文件my.cnf,并设置thread_concurrency=2(CPU核数的两倍),并指定mysql的数据存放路径:

[root@www mysql]# pwd
/usr/local/mysql
[root@www mysql]# cp support-files/my-large.cnf /etc/my.cnf
cp: overwrite `/etc/my.cnf'? y
[root@www mysql]# vim /etc/my.cnf
thread_concurrency = 2
datadir = /mydata/data

12、在PATH环境变量中添加mysql的二进制程序的路径:

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

13、启动mysqld服务,然后连接mysql服务器:

[root@www ~]# service mysqld start
Starting MySQL....                                         [  OK  ]
[root@www ~]# mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.5.33-log Source distribution
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>

二、mariadb-10.0.10的安装配置:

1、为mariadb的数据存放专门准备一个磁盘的一个分区,并使其自动挂载到/mydata目录:

[root@www ~]# tail -1 /etc/fstab
/dev/sdb1               /mydata                 ext4    defaults        0 0

2、创建mysql用户和mysql组,并指定其家目录为/mydata/data,然后在/mydata下面创建data目录,把data目录作为mariadb的数据存放目录:

[root@www ~]# groupadd -r -g 306 mysql
[root@www ~]# useradd -g mysql -u 306 -r -d /mydata/data mysql
[root@www ~]# mkdir /mydata/data

3、解压mariadb数据库,并把解压后的mariadb目录剪切到/usr/local下面,并重命名为mysql:

[root@www ~]# tar xf mariadb-10.0.10-linux-x86_64.tar.gz
[root@www ~]# mv mariadb-10.0.10-linux-x86_64 /usr/local/mysql

说明:此mariadb包解压后不需要编译安装,只需执行数据库初始化等操作。

4、更改mariadb安装路径下的所有文件的属主为root,属组为mysql:

[root@www mysql]# pwd
/usr/local/mysql
[root@www mysql]# chown -R root:mysql ./*
[root@www mysql]# ll
total 204
drwxr-xr-x  2 root mysql  4096 Apr 11 01:01 bin
-rw-r--r--  1 root mysql 17987 Mar 31 01:56 COPYING
-rw-r--r--  1 root mysql 26545 Mar 31 01:56 COPYING.LESSER
-rw-r--r--  1 root mysql  1553 Mar 31 01:56 CREDITS
drwxr-xr-x  3 root mysql  4096 Apr 11 00:59 data
drwxr-xr-x  2 root mysql  4096 Apr 11 01:02 docs
drwxr-xr-x  3 root mysql  4096 Apr 11 01:02 include
-rw-r--r--  1 root mysql  8694 Mar 31 01:56 INSTALL-BINARY
drwxr-xr-x  3 root mysql  4096 Apr 11 01:02 lib
drwxr-xr-x  4 root mysql  4096 Apr 11 00:59 man
drwxr-xr-x 11 root mysql  4096 Apr 11 01:03 mysql-test
-rw-r--r--  1 root mysql 90897 Mar 31 01:56 README
drwxr-xr-x  2 root mysql  4096 Apr 11 01:02 scripts
drwxr-xr-x 27 root mysql  4096 Apr 11 01:02 share
drwxr-xr-x  4 root mysql  4096 Apr 11 01:02 sql-bench
drwxr-xr-x  4 root mysql  4096 Apr 11 00:59 support-files
-rw-r--r--  1 root mysql  2311 Mar 31 01:56 TODO

5、更改mariadb数据目录的属主属组为mysql:

[root@www mysql]# chown -R mysql.mysql  /mydata/data/

6、以mysql用户的身份来初始化mariadb服务器,并指定mariadb的数据存放目录为/mydata/data:

[root@www mysql]# scripts/mysql_install_db --user=mysql --datadir=/mydata/data/

7、提供mariadb的服务脚本,使脚本mysqld有执行权限,并加入系统服务,让其开机自启动:

[root@www mysql]# pwd
/usr/local/mysql
[root@www mysql]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld
[root@www mysql]# chmod +x /etc/rc.d/init.d/mysqld
[root@www mysql]# chkconfig --add mysqld
[root@www mysql]# chkconfig mysqld on
[root@www mysql]# chkconfig --list mysqld
mysqld          0:off   1:off   2:on    3:on    4:on    5:on    6:off

8、创建mariadb的主配置文件放置目录,为mariadb提供主配置文件,然后编辑主配置文件my.cnf,并设置thread_concurrency=2(CPU核数的两倍),并指定mariadb的数据存放路径:

[root@www mysql]# mkdir /etc/mysql
[root@www mysql]# pwd
/usr/local/mysql
[root@www mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf
[root@www mysql]# vim /etc/mysql/my.cnf
thread_concurrency = 2
datadir = /mydata/data

9、在PATH环境变量中添加mariadb的二进制程序的路径,并使配置立即生效:

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

10、启动mysqld服务,然后连接mariadb服务器:

[root@www ~]# service mysqld start
Starting MySQL..                                           [  OK  ]
[root@www ~]# mysql
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 10.0.10-MariaDB-log MariaDB Server
Copyright (c) 2000, 2014, Oracle, SkySQL Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>