CentOS 6.4下编译安装MySQL 5.6.16
一、卸载旧版本号MySql
1、rpm卸载:
1> 检查安装包:
rpm -qa | grep mysql
2> 普通删除:
rpm -e mysql-5.6.16.rpm
3> 强力删除。假设使用上面命令删除时。提示有依赖的其它文件,则使用该命令能够对其进行强力删除。
rpm -e --nodeps mysql-5.6.16.rpm
2、tar卸载:
1> 删除暂时文件:
make clean
2> 卸载
make uninstall
3> 删除解压文件
rm -rf 目录
3、yum卸载:
1> 卸载一个软件:
yum remove package_name
2> 卸载多个:
yum remove package_name1 package_name2 package_name3
二、安装MySql
1、安装编译器gcc-c++:
yum -y install make gcc-c++ cmake bison-devel ncurses-devel
2、下载并解压:
1> 下载tar安装包:
wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.16.tar.gz
2> 解压安装包:
tar -xzvf mysql-5.6.16.tar.gz
3> 给解压文件重命名:
mv mysql-5.6.16 mysql
3、编译安装:
1、进入安装文件夹:
cd mysql
2、配置參数:
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/home/mysql/data \
-DSYSCONFDIR=/etc
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci
3> 编译安装:
make && make install
编译的參数能够參考http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html。
整个过程须要30分钟左右……漫长的等待
三、配置MySql:
1、设置权限:
1> 使用以下的命令查看是否有mysql用户及用户组:
cat /etc/passwd 查看用户列表
cat /etc/group 查看用户组列表
2> 假设没有就创建:
groupadd mysql
useradd -g mysql mysql
3> 改动/usr/local/mysql权限:
chown -R mysql:mysql /usr/local/mysql
2、初始化配置:
1> 进入安装路径
cd /usr/local/mysql
2、进入安装路径,运行初始化配置脚本,创建系统自带的数据库和表:
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/home/mysql/data --user=mysql
注:在启动MySQL服务时。会依照一定次序搜索my.cnf,先在/etc文件夹下找,找不到则会搜索"$basedir/my.cnf"。在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!
注意:在CentOS 6.4版操作系统的最小安装完毕后,在/etc文件夹下会存在一个my.cnf,须要将此文件更名为其它的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源代码安装的MySQL的正确配置。造成无法启动。
注意:有时会因没有运行权限而无法运行,须要改动一下权限。
3、启动MySQL:
1> 加入服务。拷贝服务脚本到init.d文件夹。并设置开机启动并生效(能够不设置)
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
2> 启动MySql:
service mysql start --启动MySQL
4、配置用户
MySQL启动成功后。root默认没有password,我们须要设置rootpassword。
设置之前,我们须要先设置PATH,要不不能直接调用mysql
1> 改动/etc/profile文件,在文件末尾加入
PATH=/usr/local/mysql/bin:$PATH
export PATH
2> 使环境变量配置文件马上生效:
source /etc/profile
3> 在终端内直接输入mysql进入mysql的环境,运行以下的命令改动rootpassword:
mysql -uroot
mysql> SET PASSWORD = PASSWORD('123456');
4> 若要设置root用户能够远程訪问,运行
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIED BY 'password'
WITH GRANT OPTION;
红色的password为远程訪问时。root用户的密码,能够和本地不同。
5、配置防火墙:(假设不使用防火墙,这一步能够不用)
1> 防火墙的3306port默认没有开启。若要远程訪问。须要开启这个port
打开/etc/sysconfig/iptables
在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”。下加入:
-A INPUT m state --state NEW m tcp p dport 3306 j ACCEPT
2> 然后保存,并关闭该文件,在终端内执行以下的命令。刷新防火墙配置:
service iptables restart
OK!
CentOS 6.4下编译安装MySQL 5.6.16的更多相关文章
- Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake,从http://www.cmake ...
- CentOS 6.4下编译安装MySQL 5.6.14
概述: CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14. 正文: 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server ...
- CentOS 6.4下编译安装MySQL 5.6.14 (转)
CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版本的5.6.14. 正文: 一:卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm ...
- 0622 CentOS 6.4下编译安装MySQL 5.6.14
转自http://www.cnblogs.com/xiongpq/p/3384681.html 概述: CentOS 6.4下通过yum安装的MySQL是5.1版的,比较老,所以就想通过源代码安装高版 ...
- CentOS 下编译安装MySQL
CnetOS 下编译安装 MySql 查看是否存在旧版本: rpm -qa | grep mysql 卸载旧版本: rpm -e mysql #普通删除模式 rpm -e --nodeps mys ...
- 不要着急改代码,先想想--centos 6.8下编译安装tmux
诸位读者新年好,2017开年第一篇博客,请允许我先问候一下看到这篇博客的诸位.写博客是我2017年定下的目标之一,希望我会坚持下去. 最近打算尝试一下tmux这个神器,于是有了这一篇关于思维方式的Bl ...
- CentOS Linux下编译安装MySQL
本文参考张宴的Nginx 0.8.x + PHP 5.2.13(FastCGI)搭建胜过Apache十倍的Web服务器(第6版)[原创]完成.所有操作命令都在CentOS 6.4 64位操作系统下实践 ...
- CentOS下编译安装MySQL 5.6.21
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...
- Linux下编译安装MySQL
一.环境准备yum install -y ncurses-devel libaio-develyum install -y cmake makeuseradd -s /sbin/nologin -M ...
随机推荐
- WPF Multi-Touch 开发:基础触屏操作(Raw Touch)
原文 WPF Multi-Touch 开发:基础触屏操作(Raw Touch) 多点触控(Multi-Touch)就是通过与触屏设备的接触达到人与应用程序交互的操作过程.例如,生活中经常使用的触屏手机 ...
- haroxy hdr
ACL derivatives :ACL的衍生物 hdr([<name>[,<occ>]]) : exact string match 字符串精确匹配 hdr_beg([< ...
- 配置开源项目 SlidingMenu 的问题
最近想研究一下开源项目 SlidingMenu,单是配置项目就花了好长的时间,断断续续的尝试,终于配置成功了,写下来和大家分享一下经验. Step 1:导入依赖的项目和例子 打开项目 File -&g ...
- EDStarRating(IOS星级评定)
链接地址:https://github.com/erndev/EDStarRating EDStarRating
- QT学习小技巧
原地址:http://blog.csdn.net/ykm0722/article/details/6947250 转载: 分享在比赛中写代码时,发现的几个对写程序很有用的小段代码,虽小但是在我的软件中 ...
- TCanvas.CopyRect方法中参数CopyMode的意义
首先看可能取值: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 cmBlackness = BLACKNESS; cmDstInvert = DSTINVERT; cmMer ...
- new对象数组时的内存布局
#include <iostream> #include <limits> using namespace std; #define SAFE_DELETE(x) \ { \ ...
- 数据层交换和高性能并发处理(开源ETL大数据治理工具--KETTLE使用及二次开发 )
ETL是什么?为什么要使用ETL?KETTLE是什么?为什么要学KETTLE? ETL是数据的抽取清洗转换加载的过程,是数据进入数据仓库进行大数据分析的载入过程,目前流行的数据进入仓库的 ...
- MFC 关于对话框的注意点
1.对于模态对话框而言,单击确定以后对话框窗口对象即被销毁了,而对于非模态对话框来说,对话框的对象并未销毁而是隐藏起来(EndDialog函数),因此对于非模态对话框,必须重写OnOK这个虚函数,并在 ...
- 国际化之ResourceBundle
软件在开发时要能使它同时应对世界不同地区和国家的使用,针对不同地区和国家的访问,提供相应的,符合使用者阅读习惯的操作环境,这就必须要有国际化的概念,国际化又称为“i18n”:international ...