【转】Ubuntu编译安装mysql源码
主要参考了下面两篇文章
http://forum.ubuntu.org.cn/viewtopic.php?t=330121
http://www.linuxidc.com/Linux/2011-09/42290.htm
1、去mysql官网下载最新的源码,下载页下拉菜单选Source Code->Generic Linux ????.tar.gz
2、更新系统必备的工具
- sudo apt-get install build-essential
- sudo apt-get install libncurses5-dev
- sudo apt-get install sysv-rc-conf
- sudo apt-get install cmake
3、解压mysql源码包
- tar xvzf mysql-????.tar.gz
4、创建mysql用户组
- sudo groupadd mysql
- sudo useradd -r -g mysql mysql
5、进入mysql解压后的目录,使用cmake指令编译mysql
- cmake . \
- -DCMAKE_INSTALL_PREFIX=/usr/mysql \
- -DMYSQL_DATADIR=/usr/mysql/data \
- -DDEFAULT_CHARSET=utf8 \
- -DDEFAULT_COLLATION=utf8_general_ci \
- -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \
- -DWITH_DEBUG=0 \
- -DWITH_INNOBASE_STORAGE_ENGINE=1
6、编译安装,使用root比较简单,权限问题很严重
- sudo make
- sudo make install
7、进入安装厚的目录执行
- sudo chown -R mysql .
- chgrp -R mysql .
- sudo bin/scripts/mysql_install_db \
- --user=mysql \
- --basedir=/usr/mysql \
- --datadir=/usr/mysql/data \
- --no-defaults
必须有一个–no-defaults选项,如果没有该选项,则程序会自动载入默认的配置文件
8、配置my.cnf
- sudo cp /usr/mysql/support-files/my-medium.cnf /etc/mysql/my.cnf
通常我们是通过脚本传入适当的参数启动mysqld。因此在/etc/mysql/my.cnf中加入如下的内容:
basedir=/usr/mysql
datadir=/usr/mysql/data
user=mysql
pid-file = /usr/mysql/mysql.pid
9、复制服务控制文件
- sudo cp /usr/mysql/support-files/mysql.server /etc/init.d/mysql
10、建立mysql.pid
- cd /usr/mysql/
- touch mysql.pid
11、测试mysql运行
- sudo service mysql start
或者到目录中运行
- sudo /etc/init.d/mysql start
报错的处理什么pid的错误,应该是没有权限造成的,具体错误可以去/usr/mysql/data/xxxx.err中查看
查看方法
- tail xxx.err
一般都是permision denied,自己处理一下吧
12、设置开机运行
- sudo sysv-rc-conf
该工具采用的是图形界面,很直观在此就不介绍如何使用了,我们需要做的是找到【mysql】一栏,选定【3】【4】【5】这三列,这样就完成了开机自动启动MySQL daemon了。
重启后service mysql status
mysql is running
成功了
【转】Ubuntu编译安装mysql源码的更多相关文章
- Linux 环境编译安装mysql (源码安装包)
标注: Linux需要先配置网络yum源,确定yum能在线安装软件包,方便测试过程中安装部分依赖包.配置163网易提示的网络yum源参考博客 http://www.cnblogs.com/zoulo ...
- Linux安装mysql源码
1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 ...
- linux下cmake安装mysql 源码
1.假设已经有mysql-5.6.21.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 ...
- Linux安装mysql——源码安装
1.假设已经有mysql-5.5.10.tar.gz以及cmake-2.8.4.tar.gz两个源文件 (1)先安装cmake(mysql5.5以后是通过cmake来编译的) [root@ rhel5 ...
- CentOS安装mysql源码包
1.# cd /usr/local/src 2.上传mysql.tar.gz文件 3.# tar -zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz 4.# ...
- Windows+VS2012环境下编译调试MySQL源码 转
http://m.blog.csdn.net/blog/SnowyWolf/18952643
- Linux(CentOS或RadHat)下MySQL源码安装
安装环境: CentOS6.3 64位 软件: Mysql-5.6 所需包: gcc/g++ :MySQL 5.6开始,需要使用g++进行编译.cmake :MySQL 5.5开始,使用cmake进 ...
- CentOS下编译安装MySQL 5.6.21
一.编译安装MySQL前的准备工作 安装编译源码所需的工具和库 yum install gcc gcc-c++ ncurses-devel perl 安装cmake:http://www.cnblog ...
- ubuntu编译安装opencv
简易安装opencv2: conda install --channel https://conda.anaconda.org/menpo opencv 或: sudo apt-get install ...
随机推荐
- Ant-关键元素(笔记一)
需求:使用ant脚本在控制台输出一句话 <?xml version="1.0" encoding="utf-8"?> <project nam ...
- 序列化与反序列化Serialize&Deserialize
序列化是指一个对象的实例可以被保存,保存成一个二进制串,当然,一旦被保存成二进制串,那么也可以保存成文本串了.比如,一个计数器,数值为2,我们可以用字符串“2”表示.如果有个对象,叫做connter, ...
- iOS开发——UI篇OC篇&UICollectionView详解+实例
UICollectionView详解+实例 实现步骤: 一.新建两个类 1.继承自UIScrollView的子类,比如HMWaterflowView * 瀑布流显示控件,用来显示所有的瀑布流数据 2. ...
- hdu4081 次小生成树变形
pid=4081">http://acm.hdu.edu.cn/showproblem.php?pid=4081 Problem Description During the Warr ...
- [JavaScript]'this'详解
http://blog.csdn.net/sodino/article/details/51318565
- 慎用StringEscapeUtils.escapeHtml步骤
慎用StringEscapeUtils.escapeHtml方法[转] 推荐使用Apache commons-lang的StringUtils来增强Java字符串处理功能,也一直在项目中大量使用Str ...
- 20 Best Drag and Drop jQuery Plugins--reference
reference from:http://dizyne.net/20-best-drag-drop-jquery-plugins/ jQuery has done a great job repla ...
- 建索引让SQL飞起来
今天帮助看了一个哥们的数据库,帮他抓了一下等待事件,刚好有一个sql在等待事件中,顺便看看 监控等待事件 select a.SID, a.EVENT, b.OSUSER, b.username, b. ...
- 自定义控件(视图)1期笔记02:View的绘制流程
1. 引言: 来自源码的3个方法: (1)public final void measure():测量,用来控制控件的大小,final不建议覆写 (2)public void layout():布局, ...
- C++ (P103—P154)
1 任一指针变量本身的数据值得类型都是unsigned long int 2 指针值为0的叫做空指针,为了安全起见,声明指针时最好初始化,哪怕是初始化为空指针 3 一般不能使用不同类型变量的地址来给指 ...