Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】
一、编译安装MySQL前的准备工作
安装编译源码所需的工具和库
- yum install gcc gcc-c++ ncurses-devel perl
安装cmake,从http://www.cmake.org下载源码并编译安装
- wget http://www.cmake.org/files/v2.8/cmake-2.8.10.2.tar.gz
- tar -xzvf cmake-2.8.10.2.tar.gz
- cd cmake-2.8.10.2
- ./bootstrap ; make ; make install
- cd ~
二、设置MySQL用户和组
新增mysql用户组
- groupadd mysql
新增mysql用户
- useradd -r -g mysql mysql
三、新建MySQL所需要的目录
新建mysql安装目录
- mkdir -p /usr/local/mysql
新建mysql数据库数据文件目录
- mkdir -p /data/mysqldb
四、下载MySQL源码包并解压
从http://dev.mysql.com/downloads/mysql/直接下载源码,解压mysql-5.6.16.tar.gz(http://www.quseqi.com/这个网站就是用的5.6.16版本)
- wget http://www.kakapart.com/files/mysql-5.6.16.tar.gz
- tar -zxv -f mysql-5.6.16.tar.gz
- cd mysql-5.6.16
五、编译安装MySQL
从mysql5.5起,mysql源码安装开始使用cmake了,设置源码编译配置脚本。
设置编译参数
- cmake \
- -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
- -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
- -DDEFAULT_CHARSET=utf8 \
- -DDEFAULT_COLLATION=utf8_general_ci \
- -DWITH_INNOBASE_STORAGE_ENGINE=1 \
- -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
- -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
- -DMYSQL_DATADIR=/data/mysqldb \
- -DMYSQL_TCP_PORT=3306 \
- -DENABLE_DOWNLOADS=1
| -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), |
| -DMYSQL_DATADIR=dir_name | 设置mysql数据库文件目录 |
| -DMYSQL_TCP_PORT=port_num | 设置mysql服务器监听端口,默认为3306 |
| -DENABLE_DOWNLOADS=bool | 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。 |
注:重新运行配置,需要删除CMakeCache.txt文件
- rm CMakeCache.txt
编译源码
- make
安装
- make install
六、修改mysql目录所有者和组
修改mysql安装目录
- cd /usr/local/mysql
- chown -R mysql:mysql .
修改mysql数据库文件目录
- cd /data/mysqldb
- chown -R mysql:mysql .
七、初始化mysql数据库
- cd /usr/local/mysql
- scripts/mysql_install_db --user=mysql --datadir=/data/mysqldb
八、复制mysql服务启动配置文件
- cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf
注:如果/etc/my.cnf文件存在,则覆盖。
九、复制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
十、启动mysql服务并加入开机自启动(可选这个步骤,以后可以自己启动的)
service mysqld start
chkconfig --level 35 mysqld on
十一、检查mysql服务是否启动
- netstat -tulnp | grep 3306
- mysql -u root -p
密码为空,如果能登陆上,则安装成功。
十二、修改MySQL用户root的密码
- mysqladmin -u root password '123456'
注:也可运行安全设置脚本,修改MySQL用户root的密码,同时可禁止root远程连接,移除test数据库和匿名用户。
- /usr/local/mysql/bin/mysql_secure_installation
十三、可能会出现的错误
- 问题:
- Starting MySQL..The server quit without updating PID file ([FAILED]/mysql/Server03.mylinux.com.pid).
- 解决:
- 修改/etc/my.cnf 中datadir,指向正确的mysql数据库文件目录
- 问题:
- ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
- 解决:
- 新建一个链接或在mysql中加入-S参数,直接指出mysql.sock位置。
- ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock
- /usr/local/mysql/bin/mysql -u root -S /usr/local/mysql/data/mysql.sock
- 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【给力详细教程】的更多相关文章
- Linux CentOS6.5下编译安装MySQL 5.6
检查:卸载掉原有MySql 因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已 ...
- Linux(CentOS6.5)下编译安装MySQL Community Server 5.7.12
组件 官方网站 直接下载地址 备注 mysql http://dev.mysql.com/downloads/mysql/ http://mirrors.sohu.com/mysql/MySQL- ...
- Linux(CentOS6.5)下编译安装PHP5.6.22时报错”configure: error: ZLIB extension requires gzgets in zlib”的解决方式(确定已经编译安装Zlib,并已经指定Zlib路径)
本文地址http://comexchan.cnblogs.com/,作者Comex Chan,尊重知识产权,转载请注明出处,谢谢! 今天在CentOS6.5下编译安装PHP时,一直报错 confi ...
- Linux(CentOS6.5)下编译安装Nginx官方最新稳定版(nginx-1.10.0)
注:此文已经更新为新版:http://comexchan.cnblogs.com/p/5815753.html ,请直接查看新版,谢谢! 本文地址http://comexchan.cnblogs.co ...
- Centos6.5下编译安装mysql 5.6
一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉 rpm -e mysql //普通删除模式 rpm -e ...
- CentOS 6.4下编译安装MySQL 5.6.16
一.卸载旧版本号MySql 1.rpm卸载: 1> 检查安装包: rpm -qa | grep mysql 2> 普通删除: rpm -e mysql-5.6.16.rpm 3> 强 ...
- linux/centos6.5下编译安装python2.7和python3.5.2
centos6.5环境下安装python2.7 解压python源码包 tar -xf Python-2.7.6.tar.xz 进入软件包目录 cd Python-2.7.6 添加配置项 ./conf ...
- Linux(CentOS6.5)下编译安装Nginx1.10.1
首先在特权账号(root)下安装编译时依赖项: yum install gcc gcc-c++ perl -y 首先以非特权账号(本文以账号comex为例)登陆OS: 进入data目录下载相关安装 ...
- CentOS6.5_64bit下编译安装MySQL-5.6.23
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************** ...
随机推荐
- 《JavaScript修炼之道》读书笔记
1.参考书目 入门:<JavaScript DOM编程艺术>第二版 进阶:<JavaScript高级程序设计>第二版.<JavaScript编程精粹> <Ja ...
- MPP 架构数据库
Greenplum是一种基于postgresql的分布式数据库.其采用shared nothing架构(MPP),主机,操作系统,内存,存储都是自我控制的,不存在共享.也就是每个节点都是一个单独的数据 ...
- struts2 基本用法
Struts2必需库: commons-fileupload.jar.commons-io-1.3.2.jar.freemarker-2.3.16.jar.javassist-3.7.ga.jar.o ...
- 探索 OpenStack 之(15):oslo.messaging 和 Cinder 中 MessageQueue 消息的发送和接收
前言:上一篇文章 只是 RabbitMQ 的科普,本文将仔细分析 Cinder 中 RabbitMQ 的各组件的使用.消息的发送和接收等.由于各流程步骤很多,本文只会使用若干流程图来加以阐述,尽量做到 ...
- Android系列之网络(二)----HTTP请求头与响应头
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- java8-3 多态的好处和弊端以及多态的理解
多态的好处: A:提高了代码的维护性(继承保证) B:提高了代码的扩展性(由多态保证) 猫狗案例代码 class Animal { public void eat(){ System.out.prin ...
- Android 属性动画(Property Animation) 完全解析 (上)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38067475 1.概述 Android提 供了几种动画类型:View Anima ...
- js中的垃圾回收机制
代码回收规则如下: 1.全局变量不会被回收. 2.局部变量会被回收,也就是函数一旦运行完以后,函数内部的东西都会被销毁. 3.只要被另外一个作用域所引用就不会被回收 (闭包)
- [转]面向GPU的多LOD因子的大规模场景可视化策略
直接附上原文链接: 1.面向GPU的多LOD因子的大规模场景可视化策略 2.Real-Time Dynamic Level of Detail Terrain Rendering with ROAM
- 3D数学基础:3D游戏动画中欧拉角与万向锁的理解
首先来看一下什么是欧拉角(Euler angles)?构件在三维空间中的有限转动,可依次用三个相对转角表示,即进动角.章动角和自旋角,这三个转角统称为欧拉角.——引自百度百科莱昂哈德·欧拉用欧拉角来描 ...