统一压缩包:内部打包,cmake-2.8.8.tar.gz,,mysql-5.5.25.tar.gz

CMAKE是一个跨平台的编译工具,C代表 CROSS-PLATFORM。Bison 软件包包括一个语法分析程序生成器,这个包可以通过YUM安装。#Make工具最主要也是最基本的功能就是通过makefile文件来描述源程序之间的相互关系并自动维护编译工作。而makefile文件需要按照某种语法进行编写,文件中需要说明如何编译各个源文件并连接生成可执行文件,并要求定义源文件之间的依赖关系

1.安装简介

1.1:安装环境uname -aLinux 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-releaseCentOS release 6.2 (Final)

1.2:用户和目录环境用户名:mysql安装目录:/mysql数据库目录:/mysqldata安装文件存放目录:/soft源码包:mysql-5.5.25.tar.gz

1.3:安装准备

准备工作:新建用户和用户组groupadd mysqluseradd -g mysql mysql建立安装目录mkdir /mysqlmkdir /mysqldatamkdir /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.gzcd cmake-2.8.8./configuremake && make install

make-3.82.tar.gz   #编译工具tar zxvf make-3.82.tar.gzcd make-3.8.2./configuremake && make install

2 #Bison 软件包包括一个语法分析程序生成器tar zxvf bison-2.5.tar.gzcd 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=gccCXXFLAGS="-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-DDEFAULT_CHARSET=utf8 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DENABLED_LOCAL_INFILE=1 \-DWITH_EMBEDDED_SERVER=1  \-DWITH_DEBUG=0 \-DMYSQL_TCP_PORT=3308 \-DSYSCONFDIR=/mysql

##如何之前因为库文件安装不全,编译失败,安装完全库文件后,再次编译失败,则需要删除编译文件:

rm -rf CMakeCache.txt

3.4,:编译完成,安装软件包make && make installmake -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/mysqldchmod +x /etc/init.d/mysqldchkconfig --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/profilesource /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:3306COMMAND   PID  USER   FD   TYPE  DEVICE SIZE/OFF NODE NAMEmysqld  32681 mysql   11u  IPv4 1057074      0t0  TCP *:mysql (LISTEN)

[root@ser1 ~]# ps -ef |grep mysqlroot       351 30693  0 10:18 pts/0    00:00:00 grep mysqlroot     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.pidmysql    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 mysqltcp        0      0 *:mysql                     *:*                         LISTENunix  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_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 指定产品编译说明信息   RelWithDebInfCMAKE_INSTALL_PREFIX 指定MySQL安装路径  /usr/local/mysqlCPACK_MONOLITHIC_INSTALL是否建立单个安装包文件 OFFDEFAULT_CHARSET  MYSQL 默认字符集  latin1DEFAULT_COLLATION MYSQL 默认排序字符集  latin1_swedish_ciENABLE_DEBUG_SYNC 是否启用同步调试功能  ONENABLE_DOWNLOADS 是否下载可选文件  OFFENABLE_DTRACE  是否包含 DTrace 支持ENABLE_GCOV  是否包含 Gcov 支持     5.5.14ENABLED_LOCAL_INFILE 是否启用本地 LOAD DATA INFILE OFFENABLED_PROFILING 是否启用代码查询分析  ONINSTALL_BINDIR  MySQL 主执行文件目录  PREFIX/binINSTALL_DOCDIR  文档安装路径   PREFIX/docsINSTALL_DOCREADMEDIR 自述文件目录   PREFIXINSTALL_INCLUDEDIR 头文件目录   PREFIX/includeINSTALL_INFODIR  关于信息文件目录  PREFIX/docsINSTALL_LAYOUT  选择预定义的安装  STANDALONEINSTALL_LIBDIR  库文件目录   PREFIX/libINSTALL_MANDIR  手册页面目录   PREFIX/manINSTALL_MYSQLSHAREDIR 共享数据目录   PREFIX/shareINSTALL_MYSQLTESTDIR mysql-test 目录   PREFIX/mysql-testINSTALL_PLUGINDIR 插件目录   PREFIX/lib/pluginINSTALL_SBINDIR  服务器超级用户执行文件目录 PREFIX/binINSTALL_SCRIPTDIR 脚本目录   PREFIX/scriptsINSTALL_SHAREDIR aclocal/mysql.m4 安装目录 PREFIX/shareINSTALL_SQLBENCHDIR sql-bench 性能测试工具目录 PREFIXINSTALL_SUPPORTFILESDIR 扩展支持文件目录  PREFIX/support-filesMYSQL_DATADIR  数据库存放目录MYSQL_MAINTAINER_MODE 是否启用MySQL的维护环境  OFFMYSQL_TCP_PORT  TCP/IP 端口号   3306MYSQL_UNIX_ADDR  Unix Socket 套接字文件  /tmp/mysql.sockSYSCONFDIR  选项配置文件目录WITH_COMMENT  编译环境发表评论WITH_DEBUG  是否包括调试支持  OFFWITH_EMBEDDED_SERVER 是否要建立嵌入式服务器  OFFWITH_xxx_STORAGE_ENGINE 静态编译xxx 存储引擎到服务器WITH_EXTRA_CHARSETS 额外的字符集,包括  allWITH_LIBWRAP  是否包括支持libwrap(TCP包装) OFFWITH_READLINE  使用捆绑的readline  OFFWITH_SSL  是否支持SSL  noWITH_ZLIB  是否支持Zlib  systemWITHOUT_xxx_

注意:

重新编译时,需要清除旧的对象文件和缓存信息make cleanrm -f  CMakeCache.txt