Linux(CentOS或RadHat)下MySQL源码安装
安装环境:
CentOS6.3 64位
软件:
Mysql-5.6
所需包:
gcc/g++ :MySQL 5.6开始,需要使用g++进行编译。
cmake :MySQL 5.5开始,使用cmake进行工程管理,cmake需要2.8以上版本。
bison :MySQL语法解析器需要使用bison进行编译。
ncurses-devel :用于终端操作的开发包。
zlib :MySQL使用zlib进行压缩
有关库包下载:
可以自己去官网下载,也可以去网盘下载
http://pan.baidu.com/s/1nuOm0fn
有关MySQL编译参数:
CMAKE_BUILD_TYPE 编译的版本类型:RelWithDebInfo和Debug,不同之处是RelWithDebInfo会进行优化。
CMAKE_INSTALL_PREFIX 指定make install安装的目标路径。
SYSCONFDIR 指定配置文件的默认路径。
MYSQL_DATADIR 指定data目录的默认路径。
WITH_DEBUG 指定是否有debugging信息,一般用于源码调试时,打开WITH_DEBUG,生产环境关闭。
ENABLED_PROFILING 指定是否可以使用show profile显示操作执行的详细信息。
DEFAULT_CHARSET 指定默认字符集,可以在启动的配置文件中指定。
DEFAULT_COLLATION 指定默认字符比较、排序的规则。
WITH_EXTRA_CHARSETS 指定其他可能使用的字符集。
WITH_SSL 指定SSL的类型,从5.6.6开始默认bundled类型,此外也可以指定SSL库的路径地址。
WITH_ZLIB 指定zlib的类型,用于压缩功能。
ENABLED_LOCAL_INFILE 指定是否允许使用load data infile功能。
WITH_EMBEDDED_SERVER 指定是否编译libmysqld嵌入式库。
INSTALL_LAYOUT 指定安装的布局类型。
WITH_storage_STORAGE_ENGINE 指定编译支持的存储引擎,默认支持MyISAM,MERGE,MEMORY,CSV存储引擎。
编译安装:
1.安装必须的库
通过YUM继续安装
gcc相关的包:yum install gcc*
yum install bison
yum install ncurses-devel
yum install zlib
Cmake由于CentOS6.3 yum中的Cmake版本为2.6而安装MySQL需要2.8以上的版本因而Cmake采用源码编译安装
(1)cmake安装:
本次安装采用的是cmake-2.8.5.tar.gz版本的包
tar -zxvf cmake-2.8.5.tar.gz
cd cmake-2.8.5
./configure
make
make install
全部成功后输入cmake --version命令
如果结果为:cmake version 2.8.5 则cmake安装成功。
ps:如果没有cmake的命令, 把bin下的cmake拷贝到/usr/bin/下
2.MySQL安装
MySQL源码安装包:(本次安装mysql 5.6.30版本)
mysql-5.6.30.tar.gz
tar -zxvf mysql-5.6.30.tar.gz
cd mysql-5.6.30
#创建mysql目录
mkdir -p /mysql/
mkdir -p /mysql/date
groupadd mysql
useradd -r -g mysql mysql
cmake . -DCMAKE_INSTALL_PREFIX=/mysql -DMYSQL_DATADIR=/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=1 make
make install
mysql安装参数说明:
-DCMAKE_INSTALL_PREFIX------------------------安装目录
-DINSTALL_DATADIR-------------------------数据库存放目录
-DDEFAULT_CHARSET---------------------------使用utf8字符
-DDEFAULT_COLLATION----------------------------校验字符
-DEXTRA_CHARSETS--------------------安装所有扩展字符集
-DENABLED_LOCAL_INFILE------------允许从本地导入数据
PS:如果需要重新编译的时候,需要旧的对象文件和缓存信息
make clean
rm -f CMakeCache.txt
rm -rf /etc/my.cnf
编译安装完成后
启动mysql服务:
chown -R root:mysql /mysql
chown -R mysql:mysql /mysql/date/
cd /mysql
scripts/mysql_install_db --user=mysql
cp support-files/mysql.server /etc/init.d/mysqld
vi /root/.bash_profile
在最后加上一行
PATH=$PATH:$HOME/bin:/mysql/bin:/mysql/lib
到目前为止mysql安装工作就完成了
最后我们启动mysql服务:
service mysqld start
(服务名根据cp support-files/mysql.server /etc/init.d/mysqld复制过去的名字为准)
显示Starting MySQL.. SUCCESS! 则启动成功
修改ROOT用户密码,修改远程登录权限:
登入mysql数据库
mysql -uroot
#一开始默认密码为空
如果出现 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' 错误
解决方法如下
先查看报错信息查找mysql.sock的位置,本次是位于/tmp/mysql.sock中
修改my.cnf文件
vi /etc/my.cnf
把mysqld中的socket目录修改为/tmp/mysql.sock目录。
然后重启服务
service mysqld restart
在重新登录mysql数据库
mysql -uroot
登入之后
use mysql; #选取数据库
GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; #赋予远程登录权限
update user set Password = password('*********') where User='root'; #修改root密码*******替换为需要的密码
flush privileges; #提交操作
之后root用户登入mysql数据库就需要密码了
PS:远程登录如果无法登陆检查一下服务器防火墙是否已经关闭
PS:如果不能远程连接,出现错误mysql error number 1130,则加入下面语句试试:
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '******' WITH GRANT OPTION;
Linux(CentOS或RadHat)下MySQL源码安装的更多相关文章
- linux下mysql源码安装
参考链接:http://blog.csdn.net/zqtsx/article/details/9378703 下载mysql安装包, 不会下载点这里 地址:ftp://mirror.switch.c ...
- maridb\mysql 源码安装,以10.1.26版本为例
mysql 源码安装(mariadb 10.1.26) 1.环境部署 1 安装cmake 源码安装三部曲或者yum install cmake2安装依赖包yum install -y ncurses- ...
- CentOS 7运维管理笔记(10)----MySQL源码安装
MySQL可以支持多种平台,如Windows,UNIX,FreeBSD或其他Linux系统.本篇随笔记录在CentOS 7 上使用源码安装MySQL的过程. 1.下载源码 选择使用北理工的镜像文件: ...
- Linux MySQL源码安装缺少ncurses-devel包
在Red Hat Enterprise Linux Server release 5.7 上用源码安装MySQL-5.6.23时,遇到了" remove CMakeCache.txt and ...
- ubuntu下mysql源码编译安装
建议:cpu4核以上,内存4G以上 1. 安装环境:Ubuntu Server 14.10MySQL-5.6.23.tar.gz 2. 安装必备的工具sudo apt-get install make ...
- Centos 6.5升级gcc : 源码安装 + rpm安装
1. 前言 采用Centos 6.5默认的gcc版本为4.4.7,不支持c++ 11,需要升级: 首先想到用yum命令:执行yum update gcc-c++或yum update g++ 显示没有 ...
- mysql源码安装(5.1)
下载mysql源码包并解压.wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.73.tar.gztar -zxvf mysql-5 ...
- RedHat7下PostGIS源码安装
本文介绍在RedHat7环境下安装使用PostGIS的流程. 1. PostgreSQL 1.1 yum安装PostgreSQL 这个比较简单,直接使用yum安装即可. $ sudo yum inst ...
- debian下如何源码安装tmux
一.源码安装ncurses库 1.1 获取源码 wget https://invisible-island.net/datafiles/release/ncurses.tar.gz tar xvf n ...
随机推荐
- Windows Azure Camp---漫步云端,创意无限
不再需要一系列繁杂的网银密码,一键搞定所有的支付:与朋友约会时通过实时分享地理位置迅速找到对方,这些都可以在WindowsAzure平台得以实现.在刚刚结束的2013年微软学生夏令营中,来自全国30所 ...
- 毕业bg(dfs)
毕业bg Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Total Submissi ...
- Android开发之布局优化
1.抽象布局标签 (1) <include>标签 include标签经常使用于将布局中的公共部分提取出来供其它layout共用,以实现布局模块化.这在布局编写方便提供了大大的便利. 以下以 ...
- 初探ListView
ListView可能是Android开发中最常用的一个控件,但要用的纯熟还需要不断的锻炼. 建立简单的ListView 1.在布局文件(.xml)中添加<ListView>标签 2.在Ma ...
- 数组有没有 length()这个方法? String 有没有 length()这 个方法?
1.数组中有length属性. 2.String有lenth()方法.
- IWebBrowser隐藏滚动条
刚才在项目里看到一个IWebBrowser2,竟然需要通过MoveWindow的方式把滚动条遮挡,如果要缩小IWebBrowser2控件的显示大小呢?这种方法至少我用不习惯,起码也得从源头解决这样的问 ...
- 在InteliJ IDEA中写Dart及配置IDEA - Dart Plugin
此文运用的是优雅的Markdown而书 Dart官方建议使用的编译器是DartEditor,我下载下来看下,和Eclipse的界面很相像.对于Eclipse,我是既爱又恨,爱它的稳定,恨它的功能没有I ...
- bzoj 1042: [HAOI2008]硬币购物 dp+容斥原理
题目链接 1042: [HAOI2008]硬币购物 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 1706 Solved: 985[Submit][ ...
- Python学习之字符串函数
下面是在看python核心编程中序列字符串中提到的一些函数,根据自己的学习理解总结了下,方便日后用到的时候查看. 1.string.capitalize() 把字符串的第一个字符大写 例子: ...
- Sicily-1153 解题报告
一.原题中文大意. 1 2 3 4 5 6 7 8 9 10 11 12 13 ...