目录

--cmake下载安装

http://cmake.org/download/

# wgethttp://cmake.org/files/v3.3/cmake-3.3.2.tar.gz

# tar xzvf cmake-3.3.2.tar.gz

# cd cmake-3.3.2

# ./configure

# gmake && make install

--创建用户

# groupadd mysql

# useradd -g mysql mysql

--设置用户操作系统资源限制

# vi /etc/security/limits.conf

mysql   soft   nproc   2047

mysql   hard   nproc   16384

mysql   soft   nofile  1024

mysql   hard   nofile  65536

--下载并解压缩MySQL源码文件

https://dev.mysql.com/downloads/mysql/

# tar xzvf mysql-5.6.26.tar.gz

# cd mysql-5.6.26

--执行cmake生成编译配置文件

cmake .-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci\

-DINABLED_LOCAL_INFILE=ON \

-DWITH_INNOBASE_STORAGE_ENGINE=1\

-DWITH_FEDERATED_STORAGE_ENGINE=1\

-DWITH_BLACKHOLE_STORAGE_ENGINE=1\

-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1\

-DWITH_PARTITION_STORAGE_ENGINE=1\

-DWITH_PERFSCHEMA_STORAGE_ENGINE=1\

-DCOMPILATION_COMMENT='JSS formysqltest' \

-DWITH_READLINE=ON \

-DSYSCONFDIR=/data/mysqldata/3306\

-DMYSQL_UNIX_ADDR=/data/mysqldata/3306/mysql.lock

--编译并安装

# make && make install

--修改目录权限

# chown -R mysql:mysql/usr/local/mysql

--修改环境变量文件

# vi /home/mysql/.bash_profile

export LANG=zh_CN.GB18030

export PATH=/usr/local/mysql/bin:$PATH

2.安装过程中遇到的问题:

问题1

在执行cmake编译时出现了下面的错误。

用cmake . -LH 命令可重现问题

[root@host9 mysql-5.6.26]#cmake . -LH

-- Running cmake version 3.3.2

-- MySQL 5.6.26

-- Packaging as:mysql-5.6.26-Linux-x86_64

-- HAVE_VISIBILITY_HIDDEN

-- HAVE_VISIBILITY_HIDDEN

-- HAVE_VISIBILITY_HIDDEN

-- Could NOT find Curses(missing:  CURSES_LIBRARYCURSES_INCLUDE_PATH)

CMake Error atcmake/readline.cmake:85 (MESSAGE):

Curses library not found.  Please install appropriate package,

remove CMakeCache.txt and rerun cmake.OnDebian/Ubuntu, package name is libncurses5-dev, on Redhat and derivates it isncurses-devel.

Call Stack (most recent callfirst):

cmake/readline.cmake:128 (FIND_CURSES)

cmake/readline.cmake:202(MYSQL_USE_BUNDLED_EDITLINE)

CMakeLists.txt:409 (MYSQL_CHECK_EDITLINE)

-- Configuring incomplete,errors occurred!

See also"/root/mysql-5.6.26/CMakeFiles/CMakeOutput.log".

See also"/root/mysql-5.6.26/CMakeFiles/CMakeError.log".

解决方法:安装ncurses-devel包

# yum installncurses-devel.x86_64

# make clean

# rm -rf CMakeCache.txt

# cmake . -LH

参考:

3.创建MySQL服务

--创建数据目录

# mkdir /data

# cd /data

# mkdir -p/data/mysqldata/{3306/{data,tmp,binlog},backup,scripts}

# chown -R mysql:mysqlmysqldata

# su - mysql

$cd /usr/local/mysql

--创建参数文件

$touch/data/mysqldata/3306/my.cnf

$vi /data/mysqldata/3306/my.cnf

[client]

port = 3306

socket =/data/mysqldata/3306/mysql.sock

# The MySQL server

[mysqld]

port           = 3306

user           = mysql

socket                = /data/mysqldata/3306/mysql.sock

pid-file      = /data/mysqldata/3306/mysql.pid

basedir              = /usr/local/mysql

datadir              = /data/mysqldata/3306/data

tmpdir               = /data/mysqldata/3306/tmp

open_files_limit        = 10240

explicit_defaults_for_timestamp

sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

# Buffer

max_allowed_packet       = 256M

max_heap_table_size      = 256M

net_buffer_length   = 8K

sort_buffer_size       = 2M

join_buffer_size        = 4M

read_buffer_size      = 2M

read_rnd_buffer_size      = 16M

# log

log-bin = /data/mysqldata/3306/binlog/mysql-bin

binlog_cache_size   = 32M

max_binlog_cache_size  = 512M

max_binlog_size                = 512M

binlog_format           = mixed

log_output                 = FILE

log-error           = ../mysql-error.log

slow_query_log                 = 1

slow_query_log_file         = ../slow_query.log

general_log               = 0

general_log_file       = ../general_query.log

expire-logs-days       = 14

# InnoDB

innodb_data_file_path    = ibdatal:2048M:autoextend

innodb_log_file_size         = 256M

innodb_log_files_in_group       = 3

innodb_buffer_pool_size          = 1024M

[mysql]

no-auto-rehash

prompt              = (\u@\h) [\d]>\

default-character-set       =gbk

--初始化数据库

$/usr/local/mysql/scripts/mysql_install_db--datadir=/data/mysqldata/3306/data --basedir=/usr/local/mysql

Installing MySQL systemtables...2015-09-25 16:19:57 0 [Note] /usr/local/mysql/bin/mysqld (mysqld5.6.26-log) starting as process 30402 ...

OK

Filling helptables...2015-09-25 16:20:01 0 [Note] /usr/local/mysql/bin/mysqld (mysqld5.6.26-log) starting as process 30425 ...

OK

To start mysqld at boot timeyou have to copy

support-files/mysql.server tothe right place for your system

PLEASE REMEMBER TO SET APASSWORD FOR THE MySQL root USER !

To do so, start the server,then issue the following commands:

/usr/local/mysql/bin/mysqladmin -u rootpassword 'new-password'

/usr/local/mysql/bin/mysqladmin -u root -hhost9.localdomain password 'new-password'

Alternatively you can run:

/usr/local/mysql/bin/mysql_secure_installation

which will also give you theoption of removing the test

databases and anonymous usercreated by default.  This is

strongly recommended forproduction servers.

See the manual for moreinstructions.

You can start the MySQL daemonwith:

cd . ; /usr/local/mysql/bin/mysqld_safe &

You can test the MySQL daemonwith mysql-test-run.pl

cd mysql-test ; perl mysql-test-run.pl

Please report any problems athttp://bugs.mysql.com/

The latest information aboutMySQL is available on the web at

http://www.mysql.com

Support MySQL by buyingsupport/licenses at http://shop.mysql.com

WARNING: Found existing configfile /usr/local/mysql/my.cnf on the system.

Because this file might be inuse, it was not replaced,

but was used in bootstrap(unless you used --defaults-file)

and when you later start theserver.

The new default config file wascreated as /usr/local/mysql/my-new.cnf,

please compare it with yourfile and take the changes you need.

--启动数据库服务

$mysqld_safe --defaults-file=/data/mysqldata/3306/my.cnf &

[1] 31069

[mysql@host9support-files]$150925 16:32:00 mysqld_safe Logging to '/data/mysqldata/3306/data/../mysql-error.log'.

150925 16:32:00 mysqld_safeStarting mysqld daemon with databases from /data/mysqldata/3306/data

--查看数据库进程

[mysql@host9 support-files]$netstat -lnt|grep 3306

tcp        0     0 :::3306                     :::*                        LISTEN

$ps -ef | grep bin/mysql | grep -v grep

mysql    31069 29398 0 16:31 pts/0    00:00:00 /bin/sh/usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysqldata/3306/my.cnf

mysql    31535 31069 0 16:32 pts/0    00:00:00/usr/local/mysql/bin/mysqld --defaults-file=/data/mysqldata/3306/my.cnf--basedir=/usr/local/mysql --datadir=/data/mysqldata/3306/data--plugin-dir=/usr/local/mysql/lib/plugin--log-error=/data/mysqldata/3306/data/../mysql-error.log --open-files-limit=10240--pid-file=/data/mysqldata/3306/mysql.pid--socket=/data/mysqldata/3306/mysql.sock --port=3306

4.创建管理脚本

--创建中间定义文件

$ vi/data/mysqldata/scripts/mysql_env.ini

--增加如下内容

# set env

MYSQL_USER=system

MYSQL_PASS='system'

# check parameter

if [ $# -ne 1 ]

then

HOST_PORT=3306

else

HOST_PORT=$1

fi

--修改权限

$ chmod 600/data/mysqldata/scripts/mysql_env.ini

--创建启动MySQL服务脚本

$ vi/data/mysqldata/scripts/mysql_db_startup.sh

--增加如下内容

#!/bin/sh

source/data/mysqldata/scripts/mysql_env.ini

echo "Startup MySQLService: localhost_"${HOST_PORT}

/usr/local/mysql/bin/mysqld_safe--defaults-file=/data/mysqldata/${HOST_PORT}/my.cnf &

--创建关闭MySQL服务脚本

$ vi/data/mysqldata/scripts/mysql_db_shutdown.sh

--增加如下内容

#!/bin/sh

source/data/mysqldata/scripts/mysql_env.ini

echo "Shutdown MySQLService: localhost_"${HOST_PORT}

/usr/local/mysql/bin/mysqladmin-u${MYSQL_USER} -p${MYSQL_PASS} -S /data/mysqldata/${HOST_PORT}/mysql.sockshutdown

--创建快速登录脚本

$vi/data/mysqldata/scripts/mysqlplus.sh

--增加如下内容

#!/bin/sh

source /data/mysqldata/scripts/mysql_env.ini

echo "Login MySQL Service:localhost_"${HOST_PORT}

/usr/local/mysql/bin/mysql-u${MYSQL_USER} -p${MYSQL_PASS} -S /data/mysqldata/${HOST_PORT}/mysql.sock $2

--授予脚本权限

$ chmod u+x/data/mysqldata/scripts/*.sh

$ echo "exportPATH=/data/mysqldata/scripts:\$PATH" >> ~/.bash_profile

$ source ~/.bash_profile

--测试登录MySQL

$ mysqlplus.sh

5.设置开机自动启动

--修改/etc/rc.local,增加内容如下

# vi /etc/rc.local

sudo -i -u mysql/data/mysqldata/scripts/mysql_db_startup.sh 3306 >/home/mysql/mysql_db_startup.log 2>&1

mysql源码安装配置_MySQL源码安装及配置相关推荐

  1. mysql多实例安装配置_MySQL多实例安装配置

    MySQL进行多实例配置再生产环境中非常常见,比如一些高配置数据库服务器,就会跑多个MySQL实例,借助多实例绑定的方式提高服务器的整体资源利用率.另外在MySQL5.7以上版本还不支持多源复制时,当 ...

  2. mysql压缩配置_MySQL压缩版安装配置

    mysql-5.7.11默认的配置文件是在mysql/my-default.ini,或者自己建立一个my.ini文件 ----------------------------------------- ...

  3. mysql zpi版的如何配置_Mysql zip版 安装配置

    下载的zip包有212MB,下载了几分钟就好了. 1.将mysql-5.6.13-winx64.zip 解压到D:\mysql-5.6.13\目录. 2.清理里面的调试文件 打开这个目录,发现里面的文 ...

  4. mysql安装教程_mysql 5.5 安装配置方法图文教程

    回忆一下mysql 5.5 安装配置方法,整理mysql 5.5 安装配置教程笔记,分享给大家. 1.首先进入的是安装引导界面 2.然后进入的是类型选择界面,这里有3个类型:Typical(典型).C ...

  5. mysql 5.5.安装包_Mysql的详细安装教程!亲测可用!!!

    不看后悔系列!!! 这篇文章是为初学数据库的人写的,篇幅过长,你不妨先收藏一下,等有时间在来细细阅读.(不过,我听说,只收藏不点赞,不容易找到另一半哦!) 言归正传,这篇文章我们通过以下三个步骤组成: ...

  6. mysql ver 14.14下载_MySQL简介及安装 mysql Ver 14.14 Distrib 5.7.28

    1.MySQL简介 1.数据库产品演变 第一代数据库架构: RDBMS 关系型数据库时代 : 合的时代 代表产品 :Oracle .MSSQL .MySQL.SQL server 第二代数据库架构:拆 ...

  7. mysql重装时没有权限_MySQL系列--1.安装卸载与用户权限管理

    MySQL安装 1.Ubuntu18下安装MySQL sudo apt-get install mysql-server MySQL的版本为5.7.25 2.登录MySQL 采用mysql-serve ...

  8. mysql源码安装分析_MySQL源码分析(0):编译安装及调试(转)

    编译安装 为了实现MySQL的更高级别的性能调优,我们通常需要理解其内部实现机制,并对其进行优化调试.在下面的系列中,我们会分别介绍MySQL的部分内部实现机制. 首先我们介绍如何从源代码部署一台My ...

  9. mysql代码的核心类_mysql源码---核心类 (1)线程类

    线程是mysql一个很重要的概念.线程用来处理来自客户端的连接,线程和连接是1:1的关.线程和THD对象也是1:1对应的关系,有些线程会被设置为优先,而有些线程没有优先级,而线程的优先级设置在sql/ ...

最新文章

  1. CFRunLoopRef 的内部逻辑(向 ibireme学习)
  2. Linux之mkdir和rm命令选项
  3. 微信小程序云开发用户身份登录_微信小程序开发用户授权登录(下)
  4. PNAS:亚马逊雨林向农业的转变导致土壤细菌群落的生物均质化
  5. 沙场秋点兵---走出软件作坊:三五个人十来条枪 如何成为开发正规军(二十七)...
  6. 掘金翻译计划,翻译掘金上优质的英文文章
  7. Jekyll主题收藏
  8. STD中string的常用方法总结
  9. 建站手册-网站主机:电子商务主机
  10. JAVA入门级教学之(浮点型数据类型)
  11. SIFT特征提取分析(一)
  12. 十分钟-Nginx入门到上线
  13. #动态规划 0-1背包问题空间复杂度优化
  14. WordPress 安装主题时 提示 “无法创建目录”
  15. java 图形编辑器_SVGX矢量化图形编辑器,100%JAVA实现的矢量化图形编辑器
  16. 【人话版】WEB3黑暗森林中的隐私博弈
  17. 程序员工作交接文档怎么写_IT交接事项.doc
  18. 加了尾注怎么添加新页_如何在毕业论文利用尾注添加参考文献之后再续正文
  19. 全新2007高校BBS 睿智的冷笑话
  20. 围成一圈的排列组合问题_行测技巧:排列组合之“环形排列”问题

热门文章

  1. 11-2 操作系统发展
  2. php应用编程,极客编程必备的五大PHP开发应用_PHP
  3. yum安装nginx php mysql_yum安装nginx+mysql+php
  4. P1064 金明的预算方案(分组背包)
  5. 1808: FJ的字符串
  6. openstack vlan配置_为OpenStack和K8s集群提供无缝虚拟网络
  7. 基于快速GeoHash,如何实现海量商品与商圈的高效匹配?
  8. 浅谈双人游戏的设计与魅力——由《双人成行》引发的思考
  9. 小游戏掉帧卡顿启动慢运行内存不足……这些问题有解吗?
  10. 手动安装em(redhat 5/oracle 11g)