源码编译
1. RPM包形式:
- MySQL-client 客户端组件
- MySQL-debuginfo 调试MySQL的组件
- MySQL-devel 想针对于MySQL编译安装PHP等依赖于MySQL的组件包
- MySQL-embedded MySQL的嵌入式版本
- MySQL-server 共享库
- MySQL-shared 共享库
- MySQL-shared-dompat 为了兼容老版本的共享库
- MySQL-test MySQL的测试组件(在线处理功能)
- MySQL-server-community-5.5.28-1.rhel5.i386.rpm
- MySQL-client-community-5.5.28-1.rhel5.i386.rpm
- rpm -ivh MySQL-server-community-5.5.28-1.rhel5.i386.rpm
- rpm -ivh MySQL-client-community-5.5.28-1.rhel5.i386.rpm
- -h 使用符号#显示安装进度
- -v 报告每一步操作的情况
- # groupadd -r mysql
- # useradd -g mysql -r -s /sbin/nologin -M -d /mydata/data mysql
- # chown -R mysql:mysql /mydata/data
- # tar xf mysql-5.5.28-linux2.6-i686.tar.gz -C /usr/local
- # cd /usr/local/
- # ln -sv mysql-5.5.28-linux2.6-i686 mysql
- # cd mysql
- # chown -R mysql:mysql .
- # scripts/mysql_install_db --user=mysql --datadir=/mydata/data
- # chown -R root .
- # cd /usr/local/mysql
- # cp support-files/my-large.cnf /etc/my.cnf
- 修改此文件中thread_concurrency的值为你的CPU个数乘以2,比如这里使用如下行:
- thread_concurrency = 2
- 另外还需要添加如下行指定mysql数据文件的存放位置:
- datadir = /mydata/data
- # cd /usr/local/mysql
- # cp support-files/mysql.server /etc/rc.d/init.d/mysqld
- # chkconfig --add mysqld
- # chkconfig mysqld on
- # tar xf cmake-2.8.8.tar.gz
- # cd cmake-2.8.8
- # ./bootstrap 使用此脚本来检测编译环境
- # make
- # make install
- cmake .
- cmake . -LH 或 ccmake . 查找可以使用的相关选项
- -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 指定安装路径
- -DMYSQL_DATADIR=/data/mysql 数据安装路径
- -DSYSCONFDIR=/etc 配置文件的安装路径
- -DWITH_INNOBASE_STORAGE_ENGINE=1 安装INNOBASE存储引擎
- -DWITH_ARCHIVE_STORAGE_ENGINE=1 安装ARCHIVE存储引擎
- -DWITH_BLACKHOLE_STORAGE_ENGINE=1 安装BLACKHOLE存储引擎
- -DWITH_FEDERATED_STORAGE_ENGINE=1 安装FEDERATED存储引擎
- -DWITHOUT_<ENGINE>_STORAGE_ENGINE=1
- 比如:
- -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 不启用或不编译EXAMPLE存储引擎
- -DWITHOUT_FEDERATED_STORAGE_ENGINE=1
- -DWITHOUT_PARTITION_STORAGE_ENGINE=1
- -DWITH_READLINE=1
- -DWITH_SSL=system 表示使用系统上的自带的SSL库
- -DWITH_ZLIB=system
- -DWITH_LIBWRAP=0
- -DMYSQL_TCP_PORT=3306 设置默认端口的
- -DMYSQL_UNIX_ADDR=/tmp/mysql.sock MySQL进程间通信的套接字的位置
- -DENABLED_LOCAL_INFILE=1 是否启动本地的LOCAL_INFILE
- -DEXTRA_CHARSETS=all 支持哪些额外的字符集
- -DDEFAULT_CHARSET=utf8 默认字符集
- -DDEFAULT_COLLATION=utf8_general_ci 默认的字符集排序规则
- -DWITH_DEBUG=0 是否启动DEBUG功能
- -DENABLE_PROFILING=1 是否启用性能分析功能
- make clean
- rm CMakeCache.txt
- # tar xf mysql-5.5.28.tar.gz
- # cd mysql-5.5.28
- # groupadd -r mysql
- # useradd -g -r mysql mysql
- # mkdir -pv /data/mydata
- # chown -R mysql:mysql /data/mydata
- # cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mydata -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
- # make
- # make install
- # cd /usr/local/mysql
- # chown -R :mysql . 更改属组
- # scripts/mysql_install_db --user=mysql --datadir=/data/mydata/ 指定数据存放位置
- # cp support-files/my-large.cnf /etc/my.cnf 创建配置文件
#vim /etc/my.cnf
- 添加如下行指定mysql数据文件的存放位置:
- datadir = /mydata/data
- # cp support-files/mysql.server /etc/rc.d/init.d/mysqld 复制脚本
- # chmod +x /etc/rc.d/init.d/mysqld 执行权限
- # chkconfig -add mysql 添加到服务列表中
- # service mysqld start 启动服务
- # bin/mysql 启动mysql
转载:http://pangge.blog.51cto.com/6013757/1059896