安装必需的工具

  比如cmake、gcc、g++、git

  CentOS使用下面的命令:

yum install cmake gcc g++ git

  Ubuntu使用下面的命令:

apt-get install cmake gcc g++ git

  或者

#centos
yum groupinstall "Development Tools" #ubuntu
apt-get install -y build-essential

  

安装ncurses

  CentOS使用下面的命令:

yum install ncurses-devel

  Ubuntu使用下面的命令:

apt-get install libncurses5-dev

  

安装openssl和libssl_dev

  CentOS使用下面的命令:

yum install openssl libssl_dev

  Ubuntu使用下面的命令:

apt-get install openssl libssl_dev

  

  

下载mysql源码

cd /usr/local/src
wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.44.tar.gz
tar -zxf mysql-5.6.44.tar.gz
cd mysql-5.6.44/

编译配置

cmake  \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
-DSYSCONFDIR=/etc \
-DWITH_SSL=yes \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci

    

编译安装

make && make install

  考虑到mysql的make操作需要很长时间,如果是多核处理器,建议使用多核同时进行编译:

# 开启4个job进行make操作
make -j 4 # 编译完成后进行安装
make install

  

常见问题的解决方案

  可以查看编译安装MySQL5.6失败的相关问题解决方案

  是我在安装mysql的时候,经常出现的错误,以及相关解决方案。

 

拷贝相关配置文件

#进入到安装目录
cd /usr/local/mysql/ #创建mysql用户和用户组
useradd mysql #将安装目录的所属用户组和用户改为mysql
chown -R mysql:mysql /usr/local/mysql/ #改变data目录的读写权限
chmod 764 -R /usr/local/mysql/data/ #拷贝mysql配置文件
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf #添加mysql到init.d中,使得可以通过service mysqld start|stop|restart来管理mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

  

修改配置文件

vi /etc/my.cnf

#修改配置
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=3306
#server_id = .....
#socket = .....
#编辑完之后,保存并退出

  

初始化并启动数据库

#初始化数据库,--user表示使用前面的mysql用户
/usr/local/mysql/scripts/mysql_install_db --user=mysql #启动数据库
service mysqld start #查看数据库是否启动
lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 23551 mysql 10u IPv6 167754 0t0 TCP *:mysql (LISTEN)

  

  

添加mysql/bin到全局变量PATH中

#编辑~/.bash_profile
#在PATH后面增加/usr/local/mysql/bin
#比如之前是PATH=$PATH:$HOME/bin:/usr/local/node/bin
#那么此时在最后面追加 PATH=$PATH:$HOME/bin:/usr/local/node/bin:/usr/local/mysql/bin
export PATH #保存并退出 source ~/.bash_profile

  

登录到MySQL

#初次登录数据库时,并没有为root用户设置密码,即密码为空
mysql -uroot -p

  

修改mysql的root用户密码

#将root用户的密码改为123456
mysqladmin -u root password "123456" #使用新密码登录
mysql -h localhost -uroot -p123456  

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

  1. CentOS6.3 编译安装LAMP(3):编译安装 MySQL5.5.25

    所需源码包: /usr/local/src/MySQL-5.5.25/cmake-2.8.8.tar.gz /usr/local/src/MySQL-5.5.25/mysql-5.5.25.tar.g ...

  2. 基于cmake编译安装MySQL-5.5

    cmake的重要特性之一是其独立于源码(out-of-source)的编译功能,即编译工作可以在另一个指定的目录中而非源码目录中进行,这可以保证源码目录不受任何一次编译的影响,因此在同一个源码树上可以 ...

  3. centos6.5环境源码编译安装mysql5.6.34

    centos6.5环境源码编译安装mysql5.6.34 源码下载地址http://dev.mysql.com/downloads/mysql/5.6.html#downloads 选择Generic ...

  4. Ubuntu14.04编译安装mysql5.6.26

    Ubuntu14.04编译安装mysql5.6.26 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libncurses5-d ...

  5. centos6.6下编译安装mysql5.6之后启动失败:Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid).

    今天在编译安装mysql5.6时候出现Starting MySQL... ERROR! The server quit without updating PID file (/var/lib/mysq ...

  6. centos7编译安装MySQL5.7.9

    title: centos7编译安装MySQL5.7.9 date: 2016-05-12 16:20:17 tags: --- Centos7编译安装mysql5.7.9 mysql5.7有更好的性 ...

  7. centos6.7下 编译安装MySQL5.7

    centos6.7下编译安装MySQL5.7 准备工作 #-----依赖包及MySQL和boost安装包----- #yum包安装: shell> yum -y install gcc-c++ ...

  8. centos6.7编译安装mysql5.7.17

    centos6.7编译安装mysql5.7.17 2017-03-24 09:57:15 提示:mysql5.7.17和之前5.56以前的版本安装不一样,需要用cmake 另外,看本文档的mysql编 ...

  9. centos7.2环境编译安装mysql5.5.48

    一.安装cmake编译工具 跨平台编译器 查看是否已经安装了gcc # rpm -qa | grep gcc # yum install -y gcc-c++ # yum install -y cma ...

  10. 源码编译安装mysql5.5.33

    源码编译安装mysql5.5.33 一.安装cmake编译工具 跨平台编译器 # yum install -y gcc* # yum install -y cmake 解决依赖关系 # yum ins ...

随机推荐

  1. Bootstrap 基本模板

    <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="utf-8& ...

  2. MySQL远程连接错误解决

    远程连接服务器的MySQL数据库,错误代码是1130,是由于无法给远程连接的用户权限的问题 解决方法: 本机登陆mysql后,将mysql数据库中的user表中的host项,从localhost改为% ...

  3. python 查询每周最后一个工作日

    背景: 做定时任务时,一般都是写死每周五XXXXX,但有时遇到节假日的情况,周五可能不是本周最后一个工作日 代码如下: import urllib2,datetime,json nowTime = d ...

  4. tomcat配置虛擬路徑

    1.server.xml设置 打开Tomcat安装目录,在server.xml中<Host>标签中,增加<Context docBase="硬盘目录" path= ...

  5. re模块与正则

    一.正则 正则就是用来筛选字符串中的特定的内容 正则表达式与re模块的关系: 1.正则表达式是一门独立的技术,任何语言都可以使用 2.python中药想使用正则表达式需要通过调用re模块 正则应用场景 ...

  6. 51 arm x86 的大小端记录

    51 是大端模式 arm的cortex m 默认小端,可以设置大端 x86是小端 大端模式:低位字节存在高地址上,高位字节存在低地址上  小端模式:高位字节存在高地址上,低位字节存在低地址上

  7. LOJ2823 三个朋友 ——查询字串的哈希值

    概念 查询字串的hash值 我们所说的哈希通常都是进制哈希,因为它具有一些很方便的性质,例如,具有和前缀和类似的性质. 假设一个字符串的前缀哈希值记为 $h[i]$,进制为 $base$,那么显然 $ ...

  8. 49、[源码]-Spring容器创建-创建Bean准备

    49.[源码]-Spring容器创建-创建Bean准备

  9. 如何让MySQL语句执行加速?

    一打开科技类论坛,最常看到的文章主题就是MySQL性能优化了,为什么要优化呢? 因为: 数据库出现瓶颈,系统的吞吐量出现访问速度慢 随着应用程序的运行,数据库的中的数据会越来越多,处理时间变长 数据读 ...

  10. perfectpixel 加载PSD图到网页中和已经写好的网页进行对比

    perfectpixel  这是火狐的插件: 用途:加载设计图,和 已经编写好的网页进行对比,看是否完美还原. 谷歌也有类似的插件,但是无法下载.