cmake编译安装mysql 5.6.12
cmake安装mysql 5.6.12
从mysql 5.5 开始就要用cmake编译安装
下载mysql
下载地址:http://pan.baidu.com/s/1o68xxqE
一、安装mysql5.6.12
1、创建用户、组和目录
groupadd mysql useradd -g mysql mysql
创建数据仓库目录(不创建的话默认就是这个目录即$PREFIX_DIR/data)
mkdir /server/mysql/data -p
2、安装
cmake . \
-DCMAKE_INSTALL_PREFIX=/server/mysql \
-DMYSQL_DATADIR=/server/mysql/data \
-DMYSQL_UNIX_ADDR=/server/mysql/run/mysql.sock \
-DDEFAULT_COLLATION=utf8_general_ci \
-DDEFAULT_CHARSET=utf8 \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_MYISAM_STORAGE_ENGINE= \
-DWITH_INNOBASE_STORAGE_ENGINE= \
-DWITH_MEMORY_STORAGE_ENGINE= \
-DMYSQL_USER=mysql make && make install
部分参数说明详见http://blog.samxy.com/archives/287.html
下面摘一点:
-DCMAKE_INSTALL_PREFIX= 数据库程序安装路径;
-DMYSQL_DATADIR= 数据库文件存放路径
-DMYSQL_UNIX_ADDR= 默认位置是/tmp/mysql.sock
-DDEFAULT_CHARSET= 默认数据库编码
-DDEFAULT_COLLATION= 默认数据库整理编码
-DWITH_EXTRA_CHARSETS= 扩展支持编码(all | utf8,gbk,gb2312 | none)
-DWITH_MYISAM_STORAGE_ENGINE= MYISAM引擎支持(1|0)
-DWITH_INNOBASE_STORAGE_ENGINE= innoDB引擎支持(1|0)
-DWITH_MEMORY_STORAGE_ENGINE= MEMORY引擎支持(1|0)
二、配置mysql
1、修改配置文件my.cnf
chmod /tmp -R
mkdir -p /server/mysql/etc/
mysql 5.6
cp support-files/my-default.cnf /server/mysql/etc/my.cnf
mysql 5.5
cp support-files/my-large.cnf /server/mysql/etc/my.cnf
修改my.cnf参数,没有则加入如下:
vi /server/mysql/etc/my.cnf
basedir = /server/mysql(不配置的话默认为$PREFIX_DIR)
datadir = /server/mysql/data(不配置的话默认为$PREFIX_DIR/data)
explicit_defaults_for_timestamp=true (不配置就报错5.6.12)
log-error = /server/mysql/mysql_error.log(不配置的话默认为$PREFIX_DIR/data/$hostname.err)
pid-file = /server/mysql/run/mysql.pid(不配置的话默认为$PREFIX_DIR/data/$hostname.pid)
socket = /server/mysql/run/mysql.sock
user = mysql
tmpdir = /tmp(不配置的话默认为/tmp)
2、初始化安装:
cd /server/mysql/ chmod +x scripts/mysql_install_db
这里还是在安装源目录下
scripts/mysql_install_db --defaults-file=/server/mysql/etc/my.cnf \
--basedir=/server/mysql \
--datadir=/server/mysql/data \
--user=mysql \
--pid-file=/server/mysql/run/mysql.pid \
--port= \
--socket=/server/mysql/run/mysql.sock \
--skip-external-locking \
--explicit_defaults_for_timestamp=true \
--force
成功后会输出一大堆信息(大概十几行)
(--user一定要加,其他可不加,默认会是$PREFIX_DIR和$PREFIX_DIR/data,因为--help看到说不加--user会以当前系统登录用户启动mysql)
可能需要先创建pid文件的目录
/server/mysql/bin/mysqladmin --version //测试下
先启动mysql:
chown -R mysql:mysql /server/mysql/
启动mysql
/server/mysql/bin/mysqld_safe --defaults-file=/server/mysql/etc/my.cnf --user=mysql &
再修改root密码:
/server/mysql/bin/mysqladmin -u root password 'yes'
测试是否能进入:
/server/mysql/bin/mysql -u root -p
可以进入,好的,杀掉进程,接着做下面的。
将mysql加入开机启动:
两个方法只需要执行一个
方法法一:
执行:
如果已有/etc/init.d/mysqld也要复制下,因为自带的mysqld里面控制服务的方式与源代码中带的mysqld不同,而且还要重新定义下面提到要修改的字段
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
echo "/etc/init.d/mysqld start" >> /etc/rc.local
方法二:
执行:
chkconfig--add mysqld
chkconfig--level mysqld on
3、启动mysql
/etc/init.d/mysqld start
cmake编译安装mysql 5.6.12的更多相关文章
- cmake编译安装mysql
运维开发技术交流群欢迎大家加入一起学习(QQ:722381733) 前言:这里我使用的安装方式是(cmake编译),我选择的版本是:cmake-2.8.8.tar.gz.mysql-5.5.32.ta ...
- CentOS下使用cmake编译安装mysql
一.下载安装所必需的依赖包 1.因为高版本mysql都用cmake安装,所以下载cmake wget http://www.cmake.org/files/v3.0/cmake-3.0.1.tar.g ...
- Linux(CentOS6.5)下编译安装MySQL Community Server 5.7.12
组件 官方网站 直接下载地址 备注 mysql http://dev.mysql.com/downloads/mysql/ http://mirrors.sohu.com/mysql/MySQL- ...
- Linux 环境编译安装mysql (源码安装包)
标注: Linux需要先配置网络yum源,确定yum能在线安装软件包,方便测试过程中安装部分依赖包.配置163网易提示的网络yum源参考博客 http://www.cnblogs.com/zoulo ...
- LNMP搭建01 -- 编译安装MySQL 5.6.14 和 LNMP相关的区别
[编译安装MySQL 5.6.14] [http://www.cnblogs.com/xiongpq/p/3384681.html ] [mysql-5.6.14.tar.gz 下载] http:/ ...
- CentOS 6.6 下源码编译安装MySQL 5.7.5
版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...
- 编译安装MySQL 5.5.33
环境要求: 主机名 IP地址 需要软件及版本 系统版本 mysql.mfyxw.com 192.168.80.135 Mysql5.5.33 5.5.33 1.设定主机名 hostnamectl se ...
- 源码编译安装 MySQL 5.5.x 实践
1.安装cmakeMySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具.因此,我们首先要在系统中源码编译安装cmake工具. # wget ht ...
- 基于cmake编译安装MySQL-5.5
cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以 ...
随机推荐
- JavaScript数组forEach()、map()、reduce()方法
1. js 数组循环遍历. 数组循环变量,最先想到的就是 for(var i=0;i<count;i++)这样的方式了. 除此之外,也可以使用较简便的forEach 方式 2. forEac ...
- HUST 1588 辗转数对
1588 - 辗转数对 时间限制:1秒 内存限制:128兆 155 次提交 27 次通过 题目描述 假设当前有一个数对(a, b),我们可以通过一步将这个数对变为一个新数对(a + b, b)或者是( ...
- Codeforces Beta Round #1 A,B,C
A. Theatre Square time limit per test:1 second memory limit per test:256 megabytes input:standard in ...
- bzoj:1685 [Usaco2005 Oct]Allowance 津贴
Description As a reward for record milk production, Farmer John has decided to start paying Bessie t ...
- android弹力效果菜单、组件化项目、电影票选座控件的源码
Android精选源码 android启动扫一扫和收付款的小部件源码 android弹力效果的抽屉菜单源码 对RecyclerView Item做动画 源码 android类似QQ空间,微信朋友圈,微 ...
- JS 监听浏览器各个标签间的切换
以前看到过一些网页,在标签切换到其它地址时,网页上的标题上会发生变化,一直不知道这个是怎么做的,最近查了一些资料才发现有一个 visibilitychange 事件就可以搞定,这里将介绍一下页面可见性 ...
- 五 : springMVC拦截器
springMVC拦截器的实现一般有两种方式 第一种方式是要定义的Interceptor类要实现了Spring的HandlerInterceptor 接口 第二种方式是继承实现了HandlerInte ...
- [国嵌攻略][109][Linux系统调用]
系统调用 函数实现体在内核空间,提供给应用程序来使用,就是一个系统调用. 工作流程 1.通过软中断(swi)从用户空间切换到内核空间.entry-common.S中的ENTRY(vector_swi) ...
- [国嵌攻略][051][NandFlash原理解析]
扮演角色 相当于嵌入式设备的硬盘 NandFlash分类 1.SCL(single level cell):单层式存储 2.MLC(multi level cell):多层式存储 3.SCL在存储格上 ...
- java序列化反序列化深入探究
When---什么时候需要序列化和反序列化: 简单的写一个hello world程序,用不到序列化和反序列化.写一个排序算法也用不到序列化和反序列化.但是当你想要将一个对象进行持久化写入文件,或者你想 ...