发现一个网址整理的挺好,请各位参考:

http://www.chenyudong.com/archives/building-mysql-5-6-from-source.html#i

也可以参考我的另一篇文章,整合到lamp中了:http://www.cnblogs.com/chinas/p/4572281.html

1、编辑脚本cmake_mysql_install.sh,输入以下内容:

#!/bin/bash

#下载并安装make
yum -y install gcc #排除错误:configure: error: in `/usr/local/src/make-4.1': configure: error: no acceptable C compiler found in $PATH
cd /usr/local/src/
wget http://ftp.gnu.org/gnu/make/make-4.1.tar.gz
tar zxvf make-4.1.tar.gz
cd make-4.1
./configure
make && make install #下载并安装bison
cd /usr/local/src/
wget http://alpha.gnu.org/gnu/bison/bison-2.7.91.tar.gz
tar zxvf bison-2.7..tar.gz
cd bison-2.7.
./configure
make && make install #安装gcc-c++
yum -y install gcc-c++
#for ubuntu:
#apt-get install g++ #下载并解压camke
cd /usr/local/src/
wget http://www.cmake.org/files/v3.2/cmake-3.2.2.tar.gz
tar zxvf cmake-3.2..tar.gz
cd cmake-3.2.
./bootstrap
gmake && gmake install
#or
#make && make install #下载安装ncurses
cd /usr/local/src/
wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.9.tar.gz
tar -zxvf ncurses-5.9.tar.gz
cd ncurses-5.9
./configure
make && make install #安装mysql
#首先,创建mysql用户、组
groupadd mysql
useradd -g mysql mysql -s /usr/sbin/nologin
mkdir /usr/local/mysql # 创建目录
mkdir /usr/local/mysql/data # 数据仓库目录
cd /usr/local/src/ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.24.tar.gz
#解压安装
tar zxvf mysql-5.6..tar.gz
cd mysql-5.6.
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql #安装路径
make && make install cd /usr/local/mysql
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql #初始化mysql数据库
# cp support-files/my-medium.cnf /usr/local/mysql/my.cnf #copy配置文件
cp support-files/my-default.cnf /usr/local/mysql/my.cnf
chown -R mysql:mysql /usr/local/mysql #更改权限

安装MySQL可选项:

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \ #my.cnf路径
-DWITH_MYISAM_STORAGE_ENGINE= \ #支持MyIASM引擎
-DWITH_INNOBASE_STORAGE_ENGINE= \ #支持InnoDB引擎
-DWITH_MEMORY_STORAGE_ENGINE= \ #支持Memory引擎
-DWITH_READLINE= \ #快捷键功能(我没用过)
-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #连接数据库socket路径
-DMYSQL_TCP_PORT= \ #端口
-DENABLED_LOCAL_INFILE= \ #允许从本地导入数据
-DWITH_PARTITION_STORAGE_ENGINE= \ #安装支持数据库分区
-DEXTRA_CHARSETS=all \ #安装所有的字符集
-DDEFAULT_CHARSET=utf8 \ #默认字符
-DDEFAULT_COLLATION=utf8_general_ci

2、# nano /usr/local/mysql/my.cnf ,添加以下内容(或者换成vim工具):

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
log-error = /usr/local/mysql/mysql_error.log
pid-file = /usr/local/mysql/mysql.pid
user = mysql
tmpdir = /tmp

注意:对于nano,要保存所做的修改,按下Ctrl+O;退出,按下Ctrl+X。若退出前没有保存所做的修改,它会提示你是否要保存。如果不要,请按N,反之,则按Y。然后它会让你确认要保存的文件名,确认或修改后按Enter即可。

如果你没有修改好而不小心按了保存键,您可以在请求确认文件名时按Ctrl+C来取消。

3、启动MySQL:en

# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# /etc/init.d/mysqld start

4、进入MySQL命令行;

$ mysql
bash: mysql: command not found
$ which mysql
/usr/bin/which: no mysql in (/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/lot/bin:/usr/local/python27/bin:/home/lot/bin)
[lot@bogon ~]$ whereis mysql
mysql: /usr/lib64/mysql /usr/local/mysql /usr/share/mysql
# ln -s /usr/local/mysql/bin/mysql /usr/bin

# mysql
  ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

# ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock
# service mysqld restart

5、好了,

[root@bogon bin]# service mysqld restart
ERROR! MySQL server PID file could not be found!
Starting MySQL... SUCCESS!
[root@bogon bin]# mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.6. Source distribution Copyright (c) , , Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
rows in set (0.04 sec)

6、遇到的一些错误整理:

6-1、安装 bison:

checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
GNU M4 1.4. or later is required; 1.4. or newer is recommended.
GNU M4 1.4. uses a buggy replacement strstr on some systems.
Glibc 2.9 - 2.12 and GNU M4 1.4. - 1.4. have another strstr bug.

解决方法(参考网址:http://blog.csdn.net/ldl22847/article/details/8575140

cd /usr/local/src
wget -O m4-1.4..tar.gz http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
tar -zvxf m4-1.4..tar.gz
cd m4-1.4.
./configure
make && make install

6-2、启动MySQL:

 * MySQL server PID file could not be found!
Starting MySQL
.. * The server quit without updating PID file (/usr/local/mysql/mysql.pid).

解决方法参考网址: http://www.jb51.net/article/48625.htm

个人解决方法:删除安装后的MySQL目录及下面的所有文件,重新编译安装。

6-3、权限不够(参考:http://www.webfxb.com/procedure/mysql/20140125_1021.html):

[root@vn /]# /etc/init.d/mysqld start
-bash: /etc/init.d/mysqld: 权限不够
[root@vn /]# service mysqld start
env: /etc/init.d/mysqld: 权限不够
[root@vn /]# chmod a+wrx /etc/init.d/mysqld 以root执行此命令
[root@vn /]# service mysqld start
Starting MySQL... [确定]

7、其他安装参考网址:

使用cmake安装mysql5.5.13:http://blog.chinaunix.net/uid-10435474-id-2957157.html

linux cmake 安装mysql5.5.11,以及更高版本:http://www.360doc.com/content/12/0304/19/2054285_191664568.shtml

Linux下的Nano命令:http://www.cnblogs.com/haichuan3000/articles/2125943.html

CMAKE安装MYSQL 5.6.10:http://www.2cto.com/database/201305/208302.html

LINUX下使用CMAKE安装MYSQL(源码编译):http://www.cnblogs.com/AloneSword/archive/2013/03/18/2966750.html

问题处理参考网址:

解决bash: mysql: command not found 的方法:http://www.jb51.net/article/34622.htm

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock':http://blog.csdn.net/wyzxg/article/details/4720041

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2):http://www.cnblogs.com/chinas/p/4504533.html

cmake安装MySQL的更多相关文章

  1. cmake 安装 mysql

    因为高版本mysql都用cmake安装,另外安装cluster版的mysql也必须通过cmake安装,所以学习cmake安装mysql很有必要. 今天我因为打算搭配一个mysql集群所以,在虚拟机上安 ...

  2. linux 下使用 cmake安装mysql

    原文地址:http://www.cppblog.com/issay789/archive/2013/01/05/196967.html 一.安装 m4 下载地址: http://files.w3pc. ...

  3. linux下cmake安装mysql 源码

    1.假设已经有mysql-5.6.21.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 ...

  4. 【整理】LINUX下使用CMAKE安装MYSQL

    原文地址:http://www.cppblog.com/issay789/archive/2013/01/05/196967.html 一.安装 m4 下载地址: http://files.w3pc. ...

  5. cmake安装MySQL数据库实例

    一.编译安装MySQL前的准备工作 首先检查是否有安装其他版本的编译器和数据库,先卸载干净. 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel p ...

  6. cmake安装mysql及多实例配置方法

    一.安装mysql 1. 生产环境如何选择MySQL版本 1. 选择社区版的稳定GA版本2. 可以选择5.1或5.5.互联网公司主流5.5, 其次是5.1和5.63. 选择发布后6个月以上的GA版4. ...

  7. VMware10.0.4下 CentOS 6.5 cmake安装 MySQL 5.5.32

    一.准备工作 1.1.创建 zhuzz/tools目录 [root@localhost ~]# mkdir -p /home/zhuzz/tools [root@localhost ~]# cd /h ...

  8. cmake编译安装mysql 5.6.12

    cmake安装mysql 5.6.12 从mysql 5.5 开始就要用cmake编译安装 下载mysql 下载地址:http://pan.baidu.com/s/1o68xxqE 一.安装mysql ...

  9. CentOS下使用cmake编译安装mysql

    一.下载安装所必需的依赖包 1.因为高版本mysql都用cmake安装,所以下载cmake wget http://www.cmake.org/files/v3.0/cmake-3.0.1.tar.g ...

随机推荐

  1. Spring-程序中获取注册bean的方式

    获得spring里注册Bean的四种方法,特别是第三种方法,简单: 一:方法一(多在struts框架中)继承BaseDispatchAction  import com.mas.wawacommuni ...

  2. 洛谷P1410 子序列

    题目描述 给定一个长度为N(N为偶数)的序列,问能否将其划分为两个长度为N/2的严格递增子序列, 输入输出格式 输入格式: 若干行,每行表示一组数据.对于每组数据,首先输入一个整数N,表示序列的长度. ...

  3. MATLAB自定义配置

    1.设置默认工作路径 一般来说MATLAB的默认工作路径是安装目录下的bin目录,但是,把这个作为自己的工作目录很不方便,以为里面已经有很多安装文件了,容易混淆: 每次打开再更改路径又太麻烦,所以最好 ...

  4. Android应用程序消息处理机制

    http://download.csdn.net/detail/luoshengyang/6439647 pdf

  5. BZOJ3207: 花神的嘲讽计划Ⅰ

    显然hash,然后stl随便搞. #include<bits/stdc++.h> #define N 100005 using namespace std; typedef unsigne ...

  6. glade2支持C++代码的输出(1)

    开发了一个基类,用于支持GTK2的信号回调 见BaseObject.zip 为了便于快速通过glade设计界面,并生成相应的C++代码,我对glade-2 2.12.2的代码进行了修改 原始代码:gl ...

  7. SQL Server编程(06)触发器

    SQL Server 通过触发器用来保证业务逻辑和数据的完整性.在SQL Server中,触发器是一种特殊类型的存储过程,可在执行语言事件时自动触发.SQL Server中触发器包括三种:DML触发器 ...

  8. Redis学习-开始

    C:\Program Files\Redis\redis-cli.exe 使用servicestack.redis class Program { static void Main(string[] ...

  9. photobooth.js jquery

    <div id="example" class="photobooth" style="width:758px;height:400px&quo ...

  10. jquery ajax rest invoke

    notice: <script type="text/javascript"> $(document).ready(function() { $("#b03& ...