1.安装编译源码所需的工具和库

yum install gcc gcc-c++ ncurses-devel perl -y

yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*

2.创建mysql用户和组

groupadd mysql

useradd -r -g mysql mysql

mkdir -p /mydata/mysql

mkdir -p /mydata/mysql/mysqldb    #创建一个数据目录

3.编译安装:

##注意:红色标注需要修改

cmake -DCMAKE_INSTALL_PREFIX= -DENABLE_DOWNLOADS=1

注:重新运行配置,需要删除CMakeCache.txt文件
rm CMakeCache.txt

参数解释:

-DCMAKE_INSTALL_PREFIX=dir_name 设置mysql安装目录
-DMYSQL_UNIX_ADDR=file_name 设置监听套接字路径,这必须是一个绝对路径名。默认为/tmp/mysql.sock
-DDEFAULT_CHARSET=charset_name 设置服务器的字符集。
缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。
-DDEFAULT_COLLATION=collation_name 设置服务器的排序规则。
-DWITH_INNOBASE_STORAGE_ENGINE=1
-DWITH_ARCHIVE_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 存储引擎选项:

MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。

静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1

可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)
-DMYSQL_DATADIR=dir_name 设置mysql数据库文件目录
-DMYSQL_TCP_PORT=port_num 设置mysql服务器监听端口,默认为3306
-DENABLE_DOWNLOADS=bool 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。
注:重新运行配置,需要删除CMakeCache.txt文件
rm CMakeCache.txt

4.make

make

make install

5.修改mysql目录所有者和组

cd /mydata/mysql

mkdir mysql_log

mkdir mysqlbin

chown -R mysql:mysql .

cd /mydata/mysql/mysqldb

chown -R mysql:mysql .

6.初始化mysql数据库

cd /mydata/mysql

scripts/mysql_install_db --user=mysql --datadir=/mydata/mysql/mysqldb

7.复制mysql服务启动配置文件

mv /etc/my.cnf /etc/my.cnf.old

cp /mydata/mysql/support-files/my-default.cnf /etc/my.cnf

cp support-files/mysql.server /etc/init.d/mysqld

my.cnf配置为:

[mysqld]

# basedir = .....
datadir =/mydata/mysql/mysqldb
#服务器关闭交互式连接所等待的秒数
interactive_timeout=60
#等待断开连接的时间
wait_timeout=60
#临时表内存大小
tmp_table_size=262144
#表高速缓
table_open_cache=2048
#查询缓存的大小
#query_cache_size =0
#group_concat 大小设置
group_concat_max_len = -1
#最大连接数
max_connections=1000
back_log=102
key_buffer_size = 256M
thread_cache_size=64
#服务器可用核数*2
thread_concurrency = 16
#缓冲池大小
innodb_buffer_pool_size = 10G
#日志缓存大
innodb_log_file_size = 2G
#慢日志位置
slow_query_log_file=/mydata/mysql/mysql_log/slow_query.log
#慢日志时间
long_query_time=1
#开启慢日志
slow_query_log=TRUE
#开启没有用到索引的sql
#log-queries-not-using-indexes
##数据库错误日志位置
##log-error=/mnt/Mysql_Log/SqlError.log
#开启二进制日志
log-bin=/mydata/mysql/mysqlbin/mysql-bin
#随机读取缓冲的大小
read_rnd_buffer_size =8M
#顺序读取缓冲的大小
read_buffer_size = 8M
#排序缓冲大小
sort_buffer_size = 6M
tmp_table_size=128M
#query_cache_size=128M
query_cache_type=0
#join table 缓冲的大小
join_buffer_size = 6M
#不区分大小写
lower_case_table_names=1
innodb_additional_mem_pool_size=2097152
# port = .....
# server_id = .....
socket = /mydata/mysql/mysql.sock
log_bin_trust_function_creators=1
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
max_binlog_size = 500M
server-id=1
binlog-do-db=erp_product
log-bin-index=master-bin-log.index
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

#传输文件大小限制
max_allowed_packet=20M

[mysqld_safe]
socket = /mydata/mysql/mysql.sock

[client]
socket = /mydata/mysql/mysql.sock

[mysql.server]
socket = /mydata/mysql/mysql.sock

8.#配置环境变量

vim /etc/profile

export PATH=/mydata/mysql/bin:/mydata/mysql/lib:$PATH

source /etc/profile

9.启动

service mysqld start

chkconfig --level 35 mysqld on

netstat -tulnp | grep 3306

mysql -u root -p 密码为空,如果能登陆上,则安装成功。

mysqladmin -u root password '111'

mysql5.6编译安装的更多相关文章

  1. Linux中MySQL5.6编译安装与MySQL5.7二进制安装步骤

    首先,介绍一下MySQL的几种安装方式 1.RPM.Yum 的安装方式:安装方便.安装速度快,无法定制 2.二进制:不需要安装,解压即可使用,不能定制功能 3.编译安装:可定制,安装慢. 编译安装中需 ...

  2. centos7.2 mysql5.5编译安装

    环境 centos7.2 源码包mysql5.5.38 mysql5.5开始,源码配置编译工具configure变成了cmake,所以先要去把cmake装上.并安装make,bison,cmake,g ...

  3. mysql5.5编译安装

    MySQL是一个关系型数据库管理系统 ,由瑞典MySQL AB公司开发,目前属于Oracle 公司.MySQL分为社区版和商业版,由于其体积小.速度快.总体拥有成本低,尤其是开放源码 这一特点,一般中 ...

  4. MySQL5.5编译安装以及Debug

    MySQL5.5以上版本安装是需要cmake 安装步骤: 设置编译参数cmake  -DCMAKE_INSTALL_PREFIX='/data1/guosong/mysql_debug'  -DDEF ...

  5. mysql5.5编译安装过程(自己总结)

    一,安装过程 //创建mysql安装目录,创建数据存放目录,创建用户和用户组与赋予数据存放目录权限 mkdir -p /usr/local/mysql/ mkdir -p /data/mysql/ g ...

  6. MySQL5.7 编译安装

    准备 yum install cmake yum install -y bison yum install -y libaio-devel yum install -y boost 下载 percon ...

  7. CentOS MySql5.6编译安装

    生产环境中,mysql服务器上边最好什么服务都不要再安装!!! 一.准备工作: # yum -y install make gcc-c++ cmake bison-devel ncurses-deve ...

  8. CentOS7.5源码编译安装mysql5.7.29

    #查看系统版本 [root@ctos3 ~]# cat /etc/redhat-release CentOS Linux release (Core) #下载源码包,需要注意的是mysql5.7 编译 ...

  9. 【转】linux 编译安装nginx,配置自启动脚本

    linux 编译安装nginx,配置自启动脚本 本文章来给各位同学介绍一篇关于linux 编译安装nginx,配置自启动脚本教程,希望有需要了解的朋友可一起来学习学习哦. 在公司的suse服务器装ng ...

随机推荐

  1. linux下elasticsearch集成mongodb详细教程

    由于公司业务需要,要用elasticsearch做索引库实现搜索功能,历尽千辛万苦,最后总算把mongodb和elasticsearch集成成功 1.搭建mongodb集群 参考https://www ...

  2. Bean的自动装配及作用域

    1.XML配置里的Bean自动装配 Spring IOC 容器可以自动装配 Bean,需要做的仅仅是在 <bean> 的 autowire 属性里指定自动装配的模式.自动装配方式有: by ...

  3. vi 多行注释和取消注释

    注释 :1,10 s/^/#/   注释1到10行 取消注释 ctl+v 进入visual block模式 选中 #号 按d 或x 将其删除

  4. MyBatis学习(二)---数据表之间关联

    想要了解MyBatis基础的朋友可以通过传送门: MyBatis学习(一)---配置文件,Mapper接口和动态SQL http://www.cnblogs.com/ghq120/p/8322302. ...

  5. web杂记-禁止输入框自动填充文字

    1:背景 公司基于业务需求开发了一套纯JS的时间控件,本来用得好好得.后来发现在部分浏览器下使用该时间控件会出现输入框自动填充的部分与控件的展示产生了冲突: 如图: 2:问题分析 因为部分浏览太人性化 ...

  6. webapi views目录下html文件无法访问

    找到views下web.config 增加如下红色标注内容 <?xml version="1.0"?> <configuration> <config ...

  7. PHP学习笔记(二) ---- PHP数据类型

    PHP  __数据结构类型 一.php 中的八种数据类型 1.四种标量类型 Boolean (布尔类型): true  or  false,多用于条件判断. 实例: <?php $x = &qu ...

  8. js中常用的算法排序

    在工作中都会经常用到的一些基础算法,可以很快解决问题.这些都是在工作中总结的,希望可以帮助到大家. 一.数组乱序 arr.sort(function randomsort(a, b) { return ...

  9. 转:Redis和Memcache的区别分析

    Redis和Memcache的区别分析  原文链接:http://blog.csdn.net/u013474436/article/details/48632665 简单区别: 1. Redis中,并 ...

  10. Django—Form两种解决表单数据无法动态刷新的方法

    一.无法动态更新数据的实例 1. 如下,数据库中创建了班级表和教师表,两张表的对应关系为“多对多” from django.db import models class Classes(models. ...