cmake编译安装MySQL-5.5
2014-03-08 14:31
141 查看
从mysql5.5起,mysql的源码安装开始使用cmake了。“CMake”是“cross platform make” 的缩写。即是一个跨平台的安装(编译)工具,可以用简单的语句来描述所有平台的安装(编译过程)。
一、安装cmake
下载cmake
二、编译安装mysql-5.5.33
1、使用cmake编译mysql-5.5是的常用选项
cmake指定编译选项的方式不同于make,如下为configure选项如何映射到CMake的等值参数。
如果需要重新编译时,可用下面命令清除旧的对象文件和缓存信息
指定安装文件的安装路径时常用的选项:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql --安装的基本目录
-DMYSQL_DATADIR=/data/mysql --数据文件所在目录
-DSYSCONFDIR=/etc --配置文件my.cnf所在目录
mysql存储引擎是插件式的,因此插件控制选项可以指定那个存储引擎安装。CSV、MyISAM、MERGE和MEMORY引擎为默认强制安装。若要安装其它存储引擎,使用
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
若要明确指定不编译某存储引擎,则使用-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1 比如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
lib库选项:如若要编译进其它功能,则可使用类似如下选项来实现编译时使用某库或不使用某库:
-DWITH_READLINE=1 --支持使用数据的批量导入导出功能
-DWITH_SSL=system --支持SSL安全功能
-DWITH_ZLIB=system --支持压缩功能
-DWITH_LIBWRAP=0 --安全机制
其它常用的选项有:
-DMYSQL_TCP_PORT=3306 --默认TCP端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock --默认套接字文件路径
-DENABLED_LOCAL_INFILE=1 --是否允许从本地导入数据
-DEXTRA_CHARSETS=all --额外字符集
-DDEFAULT_CHARSET=utf8 --默认字符集
-DDEFAULT_COLLATION=utf8_general_ci --排序规则
-DWITH_DEBUG=0 --是否启用调试功能
-DENABLE_PROFILING=1 --性能数据收集
2、安装配置mysql
1)创建目录和用户
2) cmake安装mysql
3. 配置并初始化数据库
4. 为mysql设置密码,消除安全隐患
一、安装cmake
下载cmake
# tar xf cmake-2.8.8.tar.gz # cd cmake-2.8.8 # ./bootstrap # make # make install
二、编译安装mysql-5.5.33
1、使用cmake编译mysql-5.5是的常用选项
cmake指定编译选项的方式不同于make,如下为configure选项如何映射到CMake的等值参数。
configure Command | CMake Command |
./configure | cmake . |
./configure --help | cmake . –LH or ccmake . |
# make clean # rm -f CMakeCache.txt
指定安装文件的安装路径时常用的选项:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql --安装的基本目录
-DMYSQL_DATADIR=/data/mysql --数据文件所在目录
-DSYSCONFDIR=/etc --配置文件my.cnf所在目录
mysql存储引擎是插件式的,因此插件控制选项可以指定那个存储引擎安装。CSV、MyISAM、MERGE和MEMORY引擎为默认强制安装。若要安装其它存储引擎,使用
-DWITH_可以使用类似如下编译选项:engine_STORAGE_ENGINE=1
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_FEDERATED_STORAGE_ENGINE=1
若要明确指定不编译某存储引擎,则使用-DWITHOUT_<ENGINE>_STORAGE_ENGINE=1 比如:
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1
-DWITHOUT_FEDERATED_STORAGE_ENGINE=1
-DWITHOUT_PARTITION_STORAGE_ENGINE=1
lib库选项:如若要编译进其它功能,则可使用类似如下选项来实现编译时使用某库或不使用某库:
-DWITH_READLINE=1 --支持使用数据的批量导入导出功能
-DWITH_SSL=system --支持SSL安全功能
-DWITH_ZLIB=system --支持压缩功能
-DWITH_LIBWRAP=0 --安全机制
其它常用的选项有:
-DMYSQL_TCP_PORT=3306 --默认TCP端口
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock --默认套接字文件路径
-DENABLED_LOCAL_INFILE=1 --是否允许从本地导入数据
-DEXTRA_CHARSETS=all --额外字符集
-DDEFAULT_CHARSET=utf8 --默认字符集
-DDEFAULT_COLLATION=utf8_general_ci --排序规则
-DWITH_DEBUG=0 --是否启用调试功能
-DENABLE_PROFILING=1 --性能数据收集
2、安装配置mysql
1)创建目录和用户
# mkdir /usr/local/mysql # mkdir /mydata/data # groupadd -r mysql # useradd -g mysql -r -d /mydata/data mysql //创建mysql用户并赋予数据存放目录权限
2) cmake安装mysql
# tar xf mysql-5.5.33.tar.gz # cd 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 # make # make install
3. 配置并初始化数据库
# cd /usr/local/mysql/ # chown -R .mysql . # ls -lh # cp support-files/my-large.cnf /etc/my.cnf //创建my.cnf配置文件到/etc 下 # vim /etc/my.cnf //编辑my.cnf 文件并插入数据文件所在目录 datadir = /mydata/data # scripts/mysql_install_db --user=mysql --datadir=/mydata/data //初始化数据库 # cp support-files/mysql.server /etc/rc.d/init.d/mysqld //创建管理MySQL数据库的shell脚本 # chmod +x /etc/rc.d/init.d/mysqld //赋予脚本可执行权限 # chkconfig --add mysqld //加入开机自起列表 # chkconfig --list mysqld //确认开机mysqld 开机自起 # service mysqld start //启动 # ss -tanl //确认3306端口处于监听状态 # vim /etc/profile.d/mysql.sh //插入 export PATH=/usr/local/mysql/bin:$PATH # . /etc/profile.d/mysql.sh //source 文件
4. 为mysql设置密码,消除安全隐患
# mysql //初始空密码登录数据库 mysql> SELECT user, host, password FROM user; //查看所有用户 mysql> DROP USER ''@localhost //删除两个默认匿名用户 mysql> DROP USER root@'::1'; //删除本机ipv6用户 mysql> UPDATE user SET password=PASSWORD('mypass') WHERE user='root'; //给用户添加密码 mysql>FLUSH PRIVILEGES; //刷新授权表 mysql> \q //退出 #mysql -uroot –p //使用密码登入
相关文章推荐
- MySQL-5.5 cmake编译安装
- 使用cmake编译安装MySQL 5.5
- 基于cmake编译安装MySQL-5.5
- MySQL5.5编译工具configure向cmake过渡指南及安装示例
- 查看编译安装的mysql5.5之后版本,编译时cmake 所使用的参数
- Cmake编译安装Mysql-5.5
- mysql5.5数据库cmake源码编译安装
- 烂泥:mysql5.5数据库cmake源码编译安装
- 烂泥:mysql5.5数据库cmake源码编译安装
- MySQL5.5编译工具configure向cmake过渡指南手册
- Linux源码安装mysql 5.5.13 (cmake编译)
- Mysql 5.5 编译安装(Ubuntu )
- centos 下编译安装mysql5.1与mysql5.5
- Linux源码安装mysql 5.5.13 (cmake编译)
- Linux源码安装mysql 5.6.12(cmake编译)
- Mysql5.5在linux平台下的编译安装
- Cmake MySQL5.6 编译安装
- mysql-安装之cmake的编译安装(mysql 5.6以后需要cmake编译安装)
- mysql 5.6/5.5 编译安装
- 编译安装cmake2.8.8 mysql5.5.32