美文网首页CentOS / Ubuntu下 软件安装教程
Ubuntu16和CentOS7下MySQL、MyRocks不同

Ubuntu16和CentOS7下MySQL、MyRocks不同

作者: 方程不等式 | 来源:发表于2018-08-08 14:20 被阅读59次
    来自MySQL官网

    这只可耐的“小孩疼”充斥了我目前的整个实习生涯。

    今天作为我装MySQL的第N次尝试,坐在电脑前,等待小孩疼下载安装的憩时,默默码下这些天跟MySQL的爱恨情愁。

    关于MySQL,想来能有兴趣点开我这篇文章的伙计大概是不需要我介绍什么是MySQL了。今天主要讲的是关于安装MySQL的过程。当然,肯定不是简单的Windows系统装MySQL,而是Macbook装MySQL以及CentOS7.0、Ubuntu16系统装MySQL。看到这里就大概了解了,作者已经在各种不同的系统版本下装过MySQL无数次,也随之而来踩过无数次坑,遇到无数次bug,查查补补能安装成功也算幸事。

    一、Macbook下使用MySQL或navicat Premium

    Macbook说用户体验,的确很好,但是就市面的一些出名软件,能做到有mac版本的都会有,实在没有的,咱们用户也没办法,所以其实在大学中,众多需要windows系统下才能使用的软件,我压根没用过,例如Visio,例如PowerDesigner,尽管mac版本有不同的代替品,不过体验都是不一样的嘛。

    1. MySQL在Macbook上的安装

    网上其实一大批博文,我这里给大家介绍一篇

    references:mac安装mysql的两种方法(含配置)

    这里就涉及到Oracle的使用啦,身为一只假的程序员,Oracle课程学习是必备的,那么Macbook拥有者,如何快速实现使用Oracle进行数据库操作呢,这个就更简单了。安装Navicat Premium,关于付费、试用、破解,当然是鼓励支持正版,但你要实在能找到破解版且愿意使用也不能强迫你。

    在我们进行相关课程学习时,大部分同学都是使用学校机房搭建好的透明实验室,使用账号连接即可,当然机房不开放了你就用不了了,所以我选择了一种投机取巧的方式。

    1. 安装Navicat Premium

    2.连接某同学已经配置好的能使用Oracle的服务器

    3.选择新建数据库,并选择Oracle类型,大功告成!

    注意:使用这种骚操作的同学会发现,你无法进行授权、新建用户或涉及权限的操作,这个问题我并没有去解决,所以也没法给出解决方案。Navicat Premium不仅支持Oracle、MySQL、PostgreSQL、SQL server、MariaDB、SQLite等,基本是一app在电脑,各种数据库操作都能试试了。


    二、MySQL5.7在ubuntu16下的安装

    reference:ubuntu-16.04源码编译安装mysql-5.7.17

    讲真,我大概是个被上帝诅咒的天使,安装MySQL能遇到各种问题,诸如上看贴的文章的安装方式,我硬是一步一个铁坑,头铁少女从cmake的bug坑好不容易走到make install complete,结果测试启动失败,over~ 源码安装方式失败。

    最后又重新找合适的博文,目前正在安装中....

    reference: 安装Percona Server 5.7

    源码安装步骤:

    1.如果你暂未在ubuntu 系统中安装git,那么你就需要使用 git 命令查询你是否安装了git 如果没有安装则输入  sudo apt-get install git

    2. $输入 git clone https://github.com/percona/percona-server.git

    3. $输入 cdpercona-server

    4. $输入 git checkout5.7

    5.$输入 git submodule init

    6.$输入 git submodule update

    7.$输入 cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community -DWITH_EMBEDDED_SERVER=OFF

    8.$输入 make

    9.$输入 make

    其中,你可能会遇到:

    ️运行cmake语句时

    此时只需  rm.CMakeCache.txt

    然后重新运行cmake语句

    ️解决上面的问题后,运行cmake,又有错误,what the f**k???

    如图所示,当前你确实boost1.59.0版本的boost库,那能有什么办法呢,只能继续找解决办法,毕竟“现在的我比之前的我更有智慧”。

    解决方案:

    ️在ubuntu系统联网下载boost1.59.0版本库文件

    直接在浏览器输入 https://sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz/download

    然后移动到percona文件夹

    cd percona-server

    在原有的cmake语句中加入 -DWITH_BOOST=boost_1_59_0.tar.gz 其实就是指定boost所在目录,这时候如果你之前没有安装ncurses,则会报错,让你进行安装,当然还有很多需要安装的库文件,这里我就只放我遇到缺少的库文件啦!

    sudo apt-get install libncurses5-dev  libncursesw5-dev libreadline-gplv2-dev zlibc zlib1g-dev 基本使用sudo apt-get install 要安装的库名 就可以完成。

    这里有个小窍门,还是我大哥后面手把手教学告诉的我,在cmake时先尽量不要加很多参数,要慢慢来,因为这样你才会知道你缺少哪些库了。

    这里大家可以直接使用ccmake命令,进行可视化查看缺少哪些库文件,有时候会遇到类似xplugin变量找不到的情况,这时候使用ccmake命令,你会发现可能是你某个test选项打开了,只需要调整为off就可以啦,按c命令可以实时刷新你下载的库文件。

    大功告成!


    三、MySQL8.0在ubuntu16.04系统下的安装

    就我目前的安装经验,果不其然,源码安装肯定会报一大堆错误,系统也重装过好几次了,于是我在网上找到了一篇巨简单的二进制安装方式。

    reference:Installing MySQL 8.0 on Ubuntu 16.04 LTS in Five Minutes

    1.  wget https://dev.mysql.com/get/mysql-apt-config_0.8.10-1_all.deb

    2.  sudo dpkg -i mysql-apt-config_0.8.10-1_all.deb

    3.  sudo apt-get update

    4.  sudo apt-get install mysql-server

    最后在/etc/my.cnf文件中添加一句“ +skip-grant-tables” 用于跳过用户的权限检查即可

    关于后面的用户设置和密码之类的在此就不复述了,广大的网友的力量总是强大的。


    四、MySQL+RocksDB在ubuntu16.04系统下的安装

    reference:

    https://www.percona.com/doc/percona-server/LATEST/myrocks/install.html

    1. wget https://repo.percona.com/apt/percona-release_0.1-6.$(lsb_release -sc)_all.deb

    2. sudo dpkg -i percona-release_0.1-6.$(lsb_release -sc)_all.deb

    3. sudo apt-get update

    4. sudo apt-get install percona-server-server-5.7

    五、MySQL5.6+RocksDB在CentOS7系统下的安装

    首先,很失望的告诉读者,读到这里,我大概知道你是特意需要在centos7下使用MyRocks的,但是我只能遗憾的告诉你,我并没攻关成功,不知道是因为centos7下面安装失败多次,文件太多版本更新之类的问题还是其他,导致最后报出了我无法在网上查询到解决方案的错误。所以最后也没有安装成功。

    以下是参考内容:

    reference:AliOS编译安装MyRocks

    1.安装必要的依赖包:

    sudo yum install cmake gcc-c++ bzip2-devel libaio-devel bison zlib-devel snappy-devel

    sudo yum install gflags-devel readline-devel ncurses-devel openssl-devel lz4-devel gdb git

    关于gflags和lz4、zstd依赖包的下载可是费尽了我的脑细胞,最后整理原因,大概就是英语没学好的锅吧。

    ️gflags安装:

    cd mysql-5.6

    git clone https://github.com/gflags/gflags.git

    sudo apt-get install libgflags-dev

    $ tar xzf gflags-$version-source.tar.gz

    $ cd gflags-$version

    $ mkdir build && cd build

    $ ccmake ..

    $ make

    ️lz4安装

    同理安装

    然后cd到lz4所在目录 然后直接

    $ make

    $ make install

    完成这两步之后,如果你的电脑疯狂报错提示你zstd包不存在,那么你就需要好好看好我下面写的了。

    ️reference: https://github.com/facebook/zstd

    首先切换到mysql目录下

    git clone https://github.com/facebook/zstd.git

    make

    make install

    make check

    然后就继续博客的内容:

    1. git clone https://github.com/facebook/mysql-5.6.git

    2. cd mysql-5.6

    3. git submodule init

    4. git submodule update

    5. cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DWITH_SSL=system -DWITH_ZLIB=bundled -DMYSQL_MAINTAINER_MODE=0-DENABLED_LOCAL_INFILE=1

    6. make-j8

    7. make install 指定文件夹

    然后启动可能会遇到sock文件不存在呀,找不到pid、mysqld文件啊诸如此类的,到时候在网上查找解决方案即可。

    希望以上内容对大家有所帮助。

    po一篇长文,也为自己转战PM秋招积累人品。欢迎骚扰~

    相关文章

      网友评论

      • 杨群Nice:真佩服,装个Mysql能写这么多字
        方程不等式:@群阳 🙊️天知道我一整个实习都在装mysql了

      本文标题:Ubuntu16和CentOS7下MySQL、MyRocks不同

      本文链接:https://www.haomeiwen.com/subject/ijltbftx.html