最近就想搞搞hadoop,然后装个MySQL,测试一下那个sqoop。

MySQL这种东西,既然是开放源码的,那就源码安装吧。

下面是我的测试环境说明:

VMware10+Ubuntu14.04 Kylin

下面开始一步一步写(非特别注明,都是用root用户执行):

1 下载MariaDB源码:https://downloads.mariadb.org/mariadb/10.0.14/,下载的文件:mariadb-10.0.14.tar.gz

2 安装cmake:apt-get install cmake,ubuntu源上可能不是最新版本的cmake,但是可以用。如果想源码安装cmake可以参考搜索引擎。

3 有一些依赖包的安装,不过我倒现在还没搞清楚具体需要哪些,但是libaio-dev这个是要装的,其他的可以搜索。

4 解压源码包,我解压好以后的路径是:/root/mariadb-10.0.14/,进入路径,输入如下命令:

 cmake . -DCMAKE_INSTALL_PREFIX=/usr/mysql -DMYSQL_DATADIR=/home/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DENABLED_LOCAL_INFILE=

这里需要根据你规划好的路径修改。

5 这个需要不算太长的时间,但是如果最后提示要你查看错误日志的话,那一般是缺少依赖包,搜索相关错误装好相关依赖即可。

6 如果出现错误,再次编译的时候需要删除CMakeCache文件。

7 不出现错误提示以后输入:make,结束之后输入make install。make需要花费比较长的时间,期间会提示很多warning,直接忽略即可。

8 上面步骤完成之后即完成了安装,下面就可以初始化数据库了。将/usr/mysql所有者修改为mysql。进入/usr/mysql/support_files,执行

cp my-large.cnf /etc/my.cnf

cp mysql.server /etc/init.d/mysql

修改/etc/my.cnf,添加如下语句:

tmpdir = /home/mysql/tmp/
basedir=/usr/mysql
datadir=/home/mysql/data

注意要建立相关目录,并将所有者修改成mysql。

修改/etc/init.d/mysql,将basedir和datadir的值修改成规划好的目录。

9 进入/usr/mysql/script,执行下面的语句:

./mysql_install_db --user=mysql --basedir=/usr/mysql --datadir=/home/mysql/data

执行之后会提示很多,修改/etc/profile,添加PATH变量:export PATH=$PATH:/usr/mysql/bin

执行source /etc/profile

10 启动mysql服务:service mysql start

11 执行:mysqladmin -u root password 'root'

12 这样就装好了mysql,su到mysql用户,执行:mysql -uroot -proot即可进入mysql命令行。

该过程同样适用于mysql,因为mariaDB本身和mysql没有天翻地覆的区别。

linux编译安装MySQL的更多相关文章

  1. Linux编译安装Mysql步骤

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

  2. Linux 环境编译安装mysql (源码安装包)

    标注: Linux需要先配置网络yum源,确定yum能在线安装软件包,方便测试过程中安装部分依赖包.配置163网易提示的网络yum源参考博客  http://www.cnblogs.com/zoulo ...

  3. Linux下安装mysql(yum和源码编译两种方式)

    这里介绍Linux下两种安装mysql的方式:yum安装和源码编译安装. 1. yum安装 (1)首先查看centos自带的mysql是否被安装: # yum list installed |grep ...

  4. Linux CentOS6.5下编译安装MySQL 5.6

    检查:卸载掉原有MySql 因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已 ...

  5. Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】

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

  6. Linux(CentOS6.5)下编译安装MySQL Community Server 5.7.12

      组件 官方网站 直接下载地址 备注 mysql http://dev.mysql.com/downloads/mysql/ http://mirrors.sohu.com/mysql/MySQL- ...

  7. Linux下编译安装MySQL

    一.环境准备yum install -y ncurses-devel libaio-develyum install -y cmake makeuseradd -s /sbin/nologin -M ...

  8. CentOS Linux下编译安装MySQL

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

  9. CentOS 编译安装 mysql

    1.前期准备 1.1 环境说明: 操作系统: CentOS release 6.4 (Final) [查看命令 cat /etc/redhat-release ] mysql : mysql-5.6. ...

随机推荐

  1. sysbench测试服务器性能

    sysbench目前已经有0.5的版本,不过最普遍使用的依旧是0.4.12,所以接下来我们会以0.4.12这个版本作为测试 Step1:下载安装sysbench wget http://pkgs.fe ...

  2. jsckson,想说爱你不容易啊。。。406错误

    最近使用spring4.0的Mvc,json请求时,客户端报错,406 Not Acceptable 解决方法一: 1.导入第三方的jackson包,jackson-mapper-asl-1.9.7. ...

  3. ADO.NET学习系列(一)

    一.ADO.NET基础 程序和数据库交互,要通过ADO.NET进行:通过ADO.NET就能在数据库中执行SQL了.ADO.NET中提供了对不同数据库的统一操作接口(ODBC).另外还有一种操作数据库的 ...

  4. thread_fork/join并发框架1

    一.线程并发控制  Thread.Executor.ForkJoin和Actor  1.裸线程      Runnable接口,调用.start()开始,没有现成的API来结束线程,你需要自己来实现, ...

  5. 暴力 + 贪心 --- Codeforces 558C : Amr and Chemistry

    C. Amr and Chemistry Problem's Link: http://codeforces.com/problemset/problem/558/C Mean: 给出n个数,让你通过 ...

  6. Python入门笔记(23):模块

    一.模块基础 1.模块 自我包含,且有组织的代码片段就是模块 模块是Pyhon最高级别的程序组织单元,它将程序代码和数据封装起来以便重用.实际的角度,模块往往对应Python程序文件. 每个文件都是一 ...

  7. WPF ListView 选中问题

    WPF ListView 选中问题  摘自:http://www.cnblogs.com/BBHor/archive/2013/04/28/VisualTreeHelper-PreviewMouseD ...

  8. Scala Collection简介

    Traversable vs Iterable Traversable, Iterable 都是trait. Iterable 继承 Traversable. Traversable: 支持forea ...

  9. Hibernate的初步

    1.简介 在java开发领域,基于数据库应用的设计与实现一直都是面向关系的,Hibernate对象/关系映射ORM框架的出现为java面向对象开发提供了易于使用的数据持久化解决方案. ORM介绍: ( ...

  10. [python拾遗]列表

    python列表拾遗 1.列表可以修改,使用 ‘+’ 将一个新列表附加在原列表的尾部: >>> a = [1,'a'] >>> b = a + [2,'b'] &g ...