1、前期准备

1.1 环境说明:
操作系统: CentOS release 6.4 (Final) [查看命令 cat /etc/redhat-release ]
mysql : mysql-5.6.26

1.2 彻底删除系统自带mysql

yum remove mysql mysql-server mysql-libs compat-mysql*
rm -rf /var/lib/mysql
#查看是否还有mysql安装程序
rpm -qa|grep mysql
rpm -e --nodeps <包的名字> 不检查依赖,直接删除rpm包

1.3 安装包准备

下载编译工具以及mysql安装包。

cd cd /usr/local/src/
wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.26.tar.gz
wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz

1.4 初始系统编译工具

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

2、cmake 安装

cd cd /usr/local/src/
tar -xzvf cmake-2.8.10.2.tar.gz
cd cmake-2.8.10.2
./bootstrap ; make ; make install

3、mysql 安装

3.1 创建 mysql用户和组
groupadd mysql
useradd -r -g mysql mysql

3.2 创建 mysql 需要目录

mkdir -p /usr/local/mysql
mkdir -p /data/mysqldb

3.3 解压&编译
tar -zxv -f mysql-5.6.16.tar.gz
cd mysql-5.6.16

cmake ./ -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/data/mysqldb -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock

make&&make install

3.4 修改mysql目录所有者和组

cd /usr/local/mysql
chown -R mysql:mysql .

cd /data/mysqldb
chown -R mysql:mysql .

3.5 初始mysql

cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb

3.6 复制mysql服务启动配置文件

cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf

修改 /etc/my.cnf

[mysqld]
basedir = /usr/local/mysql
datadir =/data/mysqldb/

3.7 复制mysql服务启动脚本以及配置PATH路径

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

vim /etc/profile
# 文件末尾添加
PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
export PATH

source /etc/profile
3.8 启动mysql服务 并 加入开机自启动
service mysqld start
chkconfig --level 35 mysqld on

3.9 检查mysql服务是否启动

netstat -tulnp | grep 3306
mysql -u root -p

3.10 添加防火墙

# root 用户登录 使用 /sbin/iptables
/sbin/iptables -I INPUT -p tcp --dport 3306 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/rc.d/init.d/iptables restart

4、mysql 安装验证

4.1 修改MySQL root用户密码

# 修改root 密码
# mysql -h127.0.0.1 -uroot -p
# update mysql.user set password=password("mysqldba") where user='root';
# flush privileges;

# mysql -u root -ppassword //进入mysql控制台
# mysql>use mysql;
-- 这个命令执行错误时可略过
# mysql>update user set host = '%' where user = 'root';
# mysql>flush privileges;
# mysql>select host, user from user; //检查‘%’ 是否插入到数据库中
# mysql>quit

5、 常见问题:

5.1 MySQL问题解决:-bash:mysql:command not found
因为mysql命令的路径在/usr/local/mysql/bin下面,所以你直接使用mysql命令时,
系统在/usr/bin下面查此命令,所以找不到了
解决办法是:
ln -s /usr/local/mysql/bin/mysql /usr/bin 做个链接即可

参考文件:

《Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】》
http://blog.csdn.net/wendi_0506/article/details/39478369

CentOS 编译安装 mysql的更多相关文章

  1. centos编译安装mysql

    groupadd mysql #添加mysql组useradd -g mysql -s /sbin/nologin mysql #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系 ...

  2. CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作

    CentOS 7.2使用源码包编译安装MySQL 5.7.22及一些操作 2018年07月05日 00:28:38 String峰峰 阅读数:2614   使用yum安装的MySQL一般版本比较旧,但 ...

  3. CentOS源码编译安装MySQL 5.5.15

    CentOS源码编译安装MySQL 5.5.15   文章目录 [隐藏] 安装编译工具 下载源码 安装cmake和bison 编译安装MySQL 一些相关设置 安装编译工具 yum install g ...

  4. CentOS 6.6 下源码编译安装MySQL 5.7.5

    版权声明:转自:http://www.linuxidc.com/Linux/2015-08/121667.htm 说明:CentOS 6.6 下源码编译安装MySQL 5.7.5 1. 安装相关工具# ...

  5. CentOS Linux下编译安装MySQL

    本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...

  6. CentOS下编译安装MySQL 5.6.21

    一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...

  7. CentOS 下编译安装MySQL

    CnetOS 下编译安装 MySql 查看是否存在旧版本: rpm -qa | grep mysql 卸载旧版本: rpm -e mysql   #普通删除模式 rpm -e --nodeps mys ...

  8. Linux编译安装Mysql步骤

    一. Centos 用 wget 下载需要的软件,保存到目录/home/zwl/MySql/下 wget http://dev.mysql.com/get/Downloads/MySQL-5.5/my ...

  9. 【排障】编译安装Mysql并使用自启动脚本mysqld后报错

    本文用于记录在某次个人实验搭建DZ论坛,在编译安装部署mysql环节时出的错到最终排除错误的过程, 前面采用DZ官网所采用的编译安装mysql的过程就省去,主要从报错处开始讲述. (题外话,经此一役后 ...

随机推荐

  1. Lucene

    Lucene 是apache软件基金会一个开放源代码的全文检索引擎工具包,是一个全文检索引擎的架构,提供了完整的查询引擎和索引引擎,部分文本分析引擎. Lucene的目的是为软件开发人员提供一个简单易 ...

  2. atitit.提升开发效率---mda 软件开发方式的革命

    atitit.提升开发效率---mda 软件开发方式的革命 1. 软件开发方式的革命开发工具的抽象层次将再次提升 1 2. 应用框架和其实现相分离 2 3. 目前的问题模型和代码不同步 2 4. MD ...

  3. Observer模式

    拉模式. Observer实现了一种间接关系.可以向各种对象注册观察者.可以有效地管理依赖关系. 拉模式实现简单,且Subject和Observer可以成为类库中的可重用元素. 当被观察对象比较复杂, ...

  4. Leetcode 130 Surrounded Regions DFS

    将内部的O点变成X input X X X XX O O X X X O XX O X X output X X X XX X X XX X X XX O X X DFS的基本框架是 void dfs ...

  5. 通过ReentrantLock源代码分析AbstractQueuedSynchronizer独占模式

    1. 重入锁的概念与作用       reentrant 锁意味着什么呢?简单来说,它有一个与获取锁相关的计数器,如果已占有锁的某个线程再次获取锁,那么lock方法中将计数器就加1后就会立刻返回.当释 ...

  6. iphone6 plus 为什么打印出的宽度是375

    首先看一张比较简单明了的 iPhone 6 与 iPhone 6 Plus 对比图,来自 PaintCode 的<The Ultimate Guide To iPhone Resolutions ...

  7. shell 控制输出格式 echo printf

    (1)echo [A@XY log]$ echo -e "ab\t45"   #带格式输出ab    45[A@XY log]$ echo "ab\t45"  ...

  8. HTML5手机APP开发入(5)

    HTML5手机APP开发入(5) 回顾一下 HTML5手机APP开发入(4) 如何自定义Component,directive HTML5手机APP开发入(3) 如何实现MVC的代码重构,自定义一个P ...

  9. 努力学习 HTML5 (4)—— 浏览器对语义元素的支持情况

    经过上一节学习,我们已经建立一个结构良好的页面,如果在旧版的 IE 浏览器中浏览可能这些语义元素无法显示. 毕竟这些语义元素什么也不做,要支持它们,只要让浏览器把它们当做普通的 <div> ...

  10. LDAP查询过滤语法(MS)

    http://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters ...