一、源码编译安装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/data | mysql的数据存放目录 |
-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)]>