美文网首页
linux mysql5.7编译安装

linux mysql5.7编译安装

作者: 沐春风_8c0b | 来源:发表于2018-06-29 12:02 被阅读0次

    1.版本:

            版本:Ubuntu16.04

            mysql-5.7.21

            Boost 1.59.0

            注:版本的问题很重要,在安装的时候也是因为版本的问题折腾了很久。

    2.mysql 的编译安装:

    1)配置环境:

    sudo apt-get update

    sudo apt-get install cmake -y            # 搭建跨平台安装cmake

    sudo apt-get install git -y

    sudo apt-get install gcc g++ -y                #安装C/C++编译器 gcc编译器

    sudo apt-get install libncurses5 libncurses5-dev -y      #安装LINUX常用图形库

    sudo apt-get install cmake                #cmake编译器

    sudo apt-get install bison                  #Linux下C/C++语法分析器

    sudo apt-get install libncurses5-dev                  #Linux系统编程游戏开发,会用到这个库

    2)boost 的安装:

    下载后解压缩到/usr/local/

    sudo mv boost_1_59_0 boost     

    3)编译安装mysql:

    添加mysql用户:

    sudo groupadd mysql

    sudo useradd -r -g mysql mysql

    创建mysql安装程序的目录和数据文件的目录 以及修改目录的用户和组:

    sudo mkdir /usr/local/mysql

    sudo mkdir /usr/local/mysql/data

    sudo chown -R mysql.mysql /usr/local/mysql

    配置mysql:

    用cmake配置mysql预编译参数:

                -DCMAKE_INSTALL_PREFIX:安装路径

                -DMYSQL_DATADIR:数据存放目录

                -DWITH_BOOST:boost源码路径

                -DSYSCONFDIR:my.cnf配置文件目录

                -DEFAULT_CHARSET:数据库默认字符编码

                -DDEFAULT_COLLATION:默认排序规则

                -DENABLED_LOCAL_INFILE:允许从本文件导入数据

                -DEXTRA_CHARSETS:安装所有字符集

    注:请对照上面的内容来根据自己的文件信息来进行下一步^_^务必要一一对应自己的!

    cmake方案:(在mysql的解压包路径下进行!)

    sudo cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/loca/mysql/data -DWITH_BOOST=/usr/local/boost -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DSYSCONFDIR=/etc -DEXTRA_CHARSETS=all

    注:如果上一步没有报错,就继续下一步:

    编译安装:(在mysql的解压包路径下进行!)

    sudo make

    sudo make install

    4)配置mysql:

    初始化数据库:(mysql 的安装路径下)

    sudo ./bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

    注意:如果使用–initialize参数初始化系统数据库之后,会在~/.mysql_secret文件中生成root用户的一个临时密码,同时也在初始化日志中打印出来了^_^

    /etc目录下创建my.cnf:

    sudo touch my.cnf

    sudo vim my.cnf

    [client]

    port=3306

    socket=/usr/local/mysql/mysqld.sock

    [mysqld]

    port=3306

    socket=/usr/local/mysql/mysqld.sock

    pid-file=/usr/local/mysql/data/mysql.pid

    basedir=/usr/local/mysql

    datadir=/usr/local/mysql/data

    启动mysql:(/usr/local/mysql/bin即mysql安装目录的bin 目录下)

    sudo ./mysqld --user=mysql

    sudo ./mysql -uroot -p 默认密码为空

    这样就可以启动mysql了

    5)配置mysql的环境变量,可在root权限下直接打开mysql

    修改/etc/profile 文件:

    sudo vim /etc/profile

    export MYSQL_HOME=/usr/local/mysql #mysql的安装目录

    export PATH=$PATH:$MYSQL_HOME/bin:

    source /etc/profile                #使配置文件的修改生效!

    修改  /etc/sudoers文件:

    Defaults      !env_reset          #修改此处!取消重新配置环境变量!

    Defaults        mail_badpass

    Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

    source /etc/sudoers                #同样使配置文件的修改生效!

    sudo -i    #root

    mysqld --user=mysql                #这样就可以直接开启mysql了^_^

    重开窗口

    sudo  -i                          #root

    mysql -uroot -p                    #这样就进入了数据库!

    注:密码为空

    mysqld --user=mysql

    安装后更改mysql密码:

    updat e mysql.user set aut hent icat ion_st ring=password('123456') where user='root ' and

    Host = 'localhost ';

    更改后刷新权限:

    flush privileges;

    编辑日期:2018-6-29  中午8点

    相关文章

      网友评论

          本文标题:linux mysql5.7编译安装

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