1:下载:
统一压缩包:内部打包,cmake-2.8.8.tar.gz,bison-2.4.2.tar.bz,mysql-5.5.25.tar.gz
下载地址
http://l4.yunpan.cn/lk/181qksy3vu
CMAKE是一个跨平台的编译工具,C代表 CROSS-PLATFORM。
Bison 软件包包括一个语法分析程序生成器,这个包可以通过YUM安装。
#Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系
其它下载地址:
http://pkgs.fedoraproject.org/repo/pkgs/cmake/cmake-2.8.8.tar.gz/ba74b22c788a0c8547976b880cd02b17/cmake-2.8.8.tar.gz
http://ftp.gnu.org/gnu/bison/bison-2.5.tar.gz
http://ftp.gnu.org/gnu/make/make-3.82.tar.gz
#mysql
http://218.249.165.35/download/27766543/35297966/1/gz/209/166/1339488302545_422/mysql-5.5.25.tar.gz
http://dl.mysql.cn/mysql5/5.5/mysql-5.5.24.tar.gz
1.安装简介
1.1:安装环境
uname -a
Linux kkk 2.6.32-220.el6.x86_64 #1 SMP Tue Dec 6 19:48:22 GMT 2011 x86_64 x86_64 x86_64 GNU/Linux
[root@kkk soft]# more /etc/redhat-release
CentOS release 6.2 (Final)
1.2:用户和目录环境
用户名:mysql
安装目录:/mysql
数据库目录:/mysqldata
安装文件存放目录:/soft
源码包:mysql-5.5.25.tar.gz
1.3:安装准备
准备工作:
新建用户和用户组
groupadd mysql
useradd -g mysql mysql
建立安装目录
mkdir /mysql
mkdir /mysqldata
mkdir /soft
2:安装依赖软件包
yum源安装
yum install gcc gcc-c++ cmake ncurses-devel bison
编译安装。
cmake-2.8.8.tar.gz #CMAKE是一个跨平台的编译工具,C代表 CROSS-PLATFORM
tar -zxvf cmake-2.8.8.tar.gz
cd cmake-2.8.8
./configure
make && make install
make-3.82.tar.gz #编译工具
tar zxvf make-3.82.tar.gz
cd make-3.8.2
./configure
make && make install
bison-2.4.2.tar.bz2 #Bison 软件包包括一个语法分析程序生成器
tar zxvf bison-2.5.tar.gz
cd bison-2.5
./configure
make && make install
3.编译安装mysql数据库最新版5.5.25
3.1:解压mysql-5.5.25.tar.gz
tar zxvf mysql-5.5.25.tar.gz
3.2:进入安装目录
cd mysql-5.5.25
3.3:定制编译参数,然后开始编译
CFLAGS="-O3" CXX=gcc
CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"
cmake -DMYSQL_USER=mysql \
-DCMAKE_INSTALL_PREFIX=/mysql \
-DMYSQL_DATADIR=/mysqldata \
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DWITH_DEBUG=0 \
-DMYSQL_TCP_PORT=3308 \
-DSYSCONFDIR=/mysql
3.4,:编译完成,安装软件包
make && make install
make -j 2 && make install
注:-j 用来指定CPU核心数,可加快编译速度,不加也可以。
4:安装完成配置
4.1 :变更mysql安装目录权限
chown -R mysql:mysql /mysql
4.2:选择合适的配置文件,copy到配置文件目录
cp /soft/mysql-5.5.25/support-files/my-large.cnf /mysql/my.cnf
4.3:配置mysql启动服务
cp /soft/mysql-5.5.25/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --level 345 mysqld on
4.4:初始化数据库
/mysql/scripts/mysql_install_db --user=mysql \
--defaults-file=/mysql/my.cnf \
--basedir=/mysql \
--datadir=/mysqldata
4.5:导入mysql环境变量,方便mysql管理
echo "export PATH=/mysql/bin:$PATH" >>/etc/profile
source /etc/profile
5:mysql启动关闭
[root@ser1 ~]# /etc/init.d/mysqld start #启动
[root@ser1 ~]# /etc/init.d/mysqld stop #关闭
6:mysql进程查看
[root@ser1 ~]# lsof -n -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 32681 mysql 11u IPv4 1057074 0t0 TCP *:mysql (LISTEN)
[root@ser1 ~]# ps -ef |grep mysql
root 351 30693 0 10:18 pts/0 00:00:00 grep mysql
root 32429 1 0 09:53 pts/0 00:00:00 /bin/sh /opt/mysql/bin/mysqld_safe --datadir=/opt/mysql/mysqldata
--pid-file=/opt/mysql/mysqldata/ser1.pid
mysql 32681 32429 0 09:53 pts/0 00:00:00 /opt/mysql/bin/mysqld --basedir=/opt/mysql --
datadir=/opt/mysql/mysqldata --plugin-dir=/opt/mysql/lib/plugin --user=mysql --log-
error=/opt/mysql/mysqldata/ser1.err --pid-file=/opt/mysql/mysqldata/ser1.pid --socket=/tmp/mysql.sock --port=3306
[root@ser1 ~]# netstat -a|grep mysql
tcp 0 0 *:mysql *:* LISTEN
unix 2 [ ACC ] STREAM LISTENING 1057075 /tmp/mysql.sock
7.登录数据库
mysql #登录
7.1:查看库
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| jj |
| mysql |
| performance_schema |
| test |
+--------------------+
5 rows in set (0.00 sec)
7.2 查看系统变量及其值,调优的参考值;
mysql> show variables;
+-----------------------------------------+------------------------------------
| Variable_name | Value
+-----------------------------------------+------------------------------------
| basedir | /opt/mysql #安装目录
| character_set_connection | utf8 #字体
| character_set_database | utf8
| character_set_filesystem | binary
| character_set_results | utf8 #中间部分内容省略
| character_set_server | utf8
| character_set_system | utf8
| character_sets_dir | /opt/mysql/share/charsets/
| collation_connection | utf8_general_ci
| collation_database | utf8_general_ci
| collation_server | utf8_general_ci
| completion_type | NO_CHAIN
| concurrent_insert | AUTO
| connect_timeout | 10
| datadir | /opt/mysql/mysqldata/
| date_format | %Y-%m-%d
| datetime_format | %Y-%m-%d %H:%i:%s
| default_storage_engine | InnoDB
| general_log | OFF
| general_log_file | /opt/mysql/mysqldata/ser1.log #错误日志
| group_concat_max_len | 1024
| lc_messages_dir | /opt/mysql/share/
| lc_time_names | en_US
| license | GPL
| local_infile | ON
| lock_wait_timeout | 31536000
| locked_in_memory | OFF
| log | OFF
| log_bin | ON
| log_bin_trust_function_creators | OFF
| log_error | /opt/mysql/mysqldata/ser1.err
| optimizer_prune_level | 1
| optimizer_search_depth | 62
| performance_schema | OFF
| performance_schema_max_thread_instances | 1000
| pid_file | /opt/mysql/mysqldata/ser1.pid #pid文件
| plugin_dir | /opt/mysql/lib/plugin/
| port | 3306
| relay_log_info_file | relay-log.info
| relay_log_purge | ON
| slave_type_conversions |
| slow_launch_time | 2
| slow_query_log | OFF
| slow_query_log_file | /opt/mysql/mysqldata/ser1-slow.log
| socket | /tmp/mysql.sock $sock文件位置
| sort_buffer_size | 524288
| version | 5.5.25-log
| version_comment | Source distribution
| warning_count | 0
| version_compile_machine | i686
| version_compile_os | Linux
| wait_timeout | 28800
8:编译参数说明
从mysql5.5起,mysql源码安装开始使用cmake。下面是 mysql 5.5 与以前的参数对照:
configure Command CMake Command
./configure cmake .
./configure --help cmake . -LH or ccmake .
参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DMYSQL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
-DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
-DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DMYSQL_TCP_PORT=3306 //MySQL监听端口
-DMYSQL_USER=mysql //MySQL用户名
其他参数:
-DWITH-EMBEDDED_SERVER=1 //编译成embedded MySQL library (libmysqld.a)
-DSYSCONFDIR=/etc //MySQL配辑文件
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径
-DWITH_READLINE=1 //快捷键功能
-DWITH_SSL=yes //SSL
-DWITH_MEMORY_STORAGE_ENGINE=1 //安装memory存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 //安装frderated存储引擎
-DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
-DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径
BUILD_CONFIG 采用官方发行版一致的编译参数
CMAKE_BUILD_TYPE 指定产品编译说明信息 RelWithDebInf
CMAKE_INSTALL_PREFIX 指定MySQL安装路径 /usr/local/mysql
CPACK_MONOLITHIC_INSTALL是否建立单个安装包文件 OFF
DEFAULT_CHARSET MYSQL 默认字符集 latin1
DEFAULT_COLLATION MYSQL 默认排序字符集 latin1_swedish_ci
ENABLE_DEBUG_SYNC 是否启用同步调试功能 ON
ENABLE_DOWNLOADS 是否下载可选文件 OFF
ENABLE_DTRACE 是否包含 DTrace 支持
ENABLE_GCOV 是否包含 Gcov 支持 5.5.14
ENABLED_LOCAL_INFILE 是否启用本地 LOAD DATA INFILE OFF
ENABLED_PROFILING 是否启用代码查询分析 ON
INSTALL_BINDIR MySQL 主执行文件目录 PREFIX/bin
INSTALL_DOCDIR 文档安装路径 PREFIX/docs
INSTALL_DOCREADMEDIR 自述文件目录 PREFIX
INSTALL_INCLUDEDIR 头文件目录 PREFIX/include
INSTALL_INFODIR 关于信息文件目录 PREFIX/docs
INSTALL_LAYOUT 选择预定义的安装 STANDALONE
INSTALL_LIBDIR 库文件目录 PREFIX/lib
INSTALL_MANDIR 手册页面目录 PREFIX/man
INSTALL_MYSQLSHAREDIR 共享数据目录 PREFIX/share
INSTALL_MYSQLTESTDIR mysql-test 目录 PREFIX/mysql-test
INSTALL_PLUGINDIR 插件目录 PREFIX/lib/plugin
INSTALL_SBINDIR 服务器超级用户执行文件目录 PREFIX/bin
INSTALL_SCRIPTDIR 脚本目录 PREFIX/scripts
INSTALL_SHAREDIR aclocal/mysql.m4 安装目录 PREFIX/share
INSTALL_SQLBENCHDIR sql-bench 性能测试工具目录 PREFIX
INSTALL_SUPPORTFILESDIR 扩展支持文件目录 PREFIX/support-files
MYSQL_DATADIR 数据库存放目录
MYSQL_MAINTAINER_MODE 是否启用MySQL的维护环境 OFF
MYSQL_TCP_PORT TCP/IP 端口号 3306
MYSQL_UNIX_ADDR Unix Socket 套接字文件 /tmp/mysql.sock
SYSCONFDIR 选项配置文件目录
WITH_COMMENT 编译环境发表评论
WITH_DEBUG 是否包括调试支持 OFF
WITH_EMBEDDED_SERVER 是否要建立嵌入式服务器 OFF
WITH_xxx_STORAGE_ENGINE 静态编译xxx 存储引擎到服务器
WITH_EXTRA_CHARSETS 额外的字符集,包括 all
WITH_LIBWRAP 是否包括支持libwrap(TCP包装) OFF
WITH_READLINE 使用捆绑的readline OFF
WITH_SSL 是否支持SSL no
WITH_ZLIB 是否支持Zlib system
WITHOUT_xxx_
注意:
重新编译时,需要清除旧的对象文件和缓存信息
make clean
rm -f CMakeCache.txt