(1)安装MySQL需要的依赖包
yum -y install ncurses-devel libaio-devel
(2)安装编译MySQL需要的软件
mysql 有3个版本分支 5.0-5.1系列 5.4-5.7系列 6.0-7.1群集产品系列
最早的mysql 5.0-5.1产品 直接./configure make;make install 但到了5.4系列为了顺应时代需求加入了新的储存引擎新的算法,更好的支持SMP架构,做了大量代码重构.
mysql5.4以上版本编译安装 需要使用cmake编译安装 .
源码安装cmake:
tar xf cmake-2.8.6.tar.gz -C /usr/src/ #此软件包需要提前准备
cd /usr/src/cmake-2.8.6/
./configure ;gmake;gmake install
which cmake
/usr/local/bin/cmake
(3)开始安装mysql
建立MySQL用户账号
useradd -s /sbin/nologin -M mysql id mysql uid=500(mysql) gid=500(mysql) 组=500(mysql)
Myslq包分类
mysql-5.5.32.tar.gz 源码包 mysql-5.5.32-linux2.6-x86_64.tar.gz 二进制包 #二进制安装包,仅需要解压就可以了,不需要执行cmake/configure,make,make install等过程
tar xf mysql-5.5.32.tar.gz -C /usr/src/ cd /usr/src/mysql-5.5.32/ cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.32 -DMYSQL_DATADIR=/usr/local/mysql-5.5.32/data -DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.32/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 -DWITH_FAST_MUTEXES=1 -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DWITH_READLINE=1 -DWITH_EMBEDDED_SERVER=1 -DWITH_DEBUG=0 ;make ;make install
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-5.5.22 \ #安装至哪里
-DMYSQL_DATADIR=/usr/local/mysql-5.5.32/data \ #数据存放目录
-DMYSQL_UNIX_ADDR=/usr/local/mysql-5.5.32/tmp/mysql.sock \ #MySQL进程间通信的套接字位置
-DDEFAULT_CHARSET=utf8 \ #默认字符集为utf8
-DDEFAULT_COLLATION=utf8_general_ci \ #默认字符集排序规则
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \ #额外的字符集支持
-DENABLED_LOCAL_INFILE=ON \ #是否启用加载本地数据
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #静态编译innodb存储引擎到数据库
-DWITH_FEDERATED_STORAGE_ENGINE=1 \ #静态编译FEDERATED存储引擎到数据库
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #静态编译blackhole存储引擎到数据库
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ #不编译EXAMPLE存储引擎到数据库
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \ #不支持数据库分区
-DWITH_FAST_MUTEXES=1
-DWITH_ZLIB=bundled \ #zlib压缩模式
-DENABLED_LOCAL_INFILE=1 \ #是否启用本地的LOCAL_INFILE
-DWITH_READLINE=1 \ #使用捆绑的readline
-DWITH_EMBEDDED_SERVER=1 \ #是否要建立嵌入式服务器
-DWITH_DEBUG=0 #禁用DEBUG(开启影响性能)
(4)设置不带版本号的软链接
ln -s /usr/local/mysql-5.5.32 /usr/local/mysql
(5)安装后的调整
chown -R mysql:mysql /usr/local/mysql/data #对数据库目录设置权限
/bin/cp /usr/local/mysql-5.5.32/support-files/my-medium.cnf /etc/my.cnf #建立配置文件
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql #初始化数据
echo "PATH=/usr/local/mysql/bin:$PATH" >> /etc/profile #设置环境变量
. /etc/profile #全局生效
#初始化数据
--basedir=/usr/local/mysql/ #安装到哪
--datadir=/usr/local/mysql/data/ #数据库放在哪
--user=mysql #用户是谁
(6)添加mysql系统服务
/bin/cp /usr/local/mysql-5.5.32/support-files/mysql.server /etc/init.d/mysqld #添加至/etc/init.d/启动 chmod +x /etc/init.d/mysqld #给与权限 chkconfig --add mysqld #加入开机启动项
(7)启动mysql服务
/etc/init.d/mysqld start Starting MySQL.. SUCCESS!
netstat -anput | grep mysql tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 22840/mysqld