您的位置:首页 > 运维架构 > Linux

centos7中源码安装mysql过程及遇到的问题

2017-09-21 23:09 519 查看
1.准备

     从官网下载了最新linux源码包5.7.19版本 ( https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.19.tar.gz)
     解压后查看INSTALL,找到官方源码安装帮助文档地址https://dev.mysql.com/doc/refman/5.7/en/source-installation.html

     阅读安装条件后

      


   可知要安装 cmake, make(v3.75+),c++编译器,boost库(v1.59.0),perl

   使用 rpm -qi 包名 查看以上工具是否安装及安装的版本信息,

   发现未安装boost,于是到boost官网下载了1.59.0版本,按文档中的安装步骤安装了boost

   


 将boost安装在了 /usr/local/boost目录下



2.编译安装源码包

     从之前的官方文档中找到了编译安装步骤(https://dev.mysql.com/doc/refman/5.7/en/installing-source-distribution.html),其大致步骤如下

   


    主要是在源码中新建 build目录并在其中编辑链接生成可执行安装文件,在编译过程,依次遇到了如下问题:

    第一个是提示找不到boost,于是按文档指定了 boost目录, cmake .. -DWITH_BOOST=/usr/local/boost

        


           

            


    但奇怪的是,仍然报错,于是删除的原来安装了boost,在通过 cmake .. _DDOWNLOAD_BOOST=1   -DWITH_BOOST=/usr/local/boost -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 下载了boost,通过查看boost文件夹,似乎是不用原先boost文档提供的步骤安装, 直接解压下载的boost到 /usr/local/boost下即可

    第二处错误提示如下:

       


    MESSAGE提示安装Curses库,于是 yum search curses找到了如下rpm包

            


   尝试安装了此rpm包,继续安装步骤,遇到如下问题

             


    但似乎提示成功,但为保险起见又安装了bison,最后cmake成功

         


    

    然后进行了make 过了大概50分钟,终于编译好了,输入make install安装成功

3.配置并启动mysql

     进入到安装的mysql目录下,按如果操作配置了mysql

    


   使用   
bin/mysqld_safe --user=mysql
& 命令启动了mysql

   由于
 bin\mysqld --initialize 生成了一个随机密码,无法进入到mysql于是ps查看mysql进程id并kill掉,使用


 
mysqld_safe
--skip-grant-tables &
  跳过密码验证

    mysql -u root 登录   update mysql.user set authentication_string=password('root') where User='root' 更改了初始密码为root(mysql5.7中密码字段名不再是Password)

   但并未发现my.cnf配置文件,并且同样正常启动了,另外在support-files中找到了 mysql.server脚本可以用于启动重启mysql
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息