• centos7上源码安装mysql5.7.11


    由于初学,安装这玩意搞了三天,其间各种报错难以解决,网上各种解答误导。最好的办法还是使用官方的英文文档,建议初学者一定要使用官方的文档,特别是下面两个页面作为初学者一定要细看:

    Installing MySQL Using a Standard Source Distribution:(使用标准源码方式安装)
    
    http://dev.mysql.com/doc/refman/5.7/en/installing-source-distribution.html
    
    MySQL Source-Configuration Options:(源码配置参数说明)
    
    http://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html

    安装步骤:

    # 新增mysql用户及用户组
    shell> groupadd mysql
    shell> useradd -r -g mysql -s /bin/false mysql

    # 进入源码下载目录,解压
    shell> tar zxvf mysql-VERSION.tar.gz

    # 进入解压后的目录
    shell> cd mysql-VERSION

    # 进行配置
    shell>cmake -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_BOOST=dir
    # 上述内容有必要详细说明一下:
    # 1、mysql从某一版本开始(好像是5.7),使用cmake进行配置,而不是./configure
    # 2、mysql默认的配置参数一般可正常使用,详见上面的第二个链接,如不需要修改,则不用配置,我们这里只配置默认字符集与默认编码
    # 3、mysql5.7.11版本需要使用boost(一个C++程序库),DWITH_BOOST后面需要配置该库的地址,建议直接下载带boost库的mysql源码包
    # 开始编译及安装
    shell> make && make install

    # 清除安装临时文件
    shell> make clean
    # 备份/etc/my.cnf这个文件,删除掉/etc/my.cnf这个文件:(原因是系统可能原本就存在该文件,为不干扰mysql的正常使用,先删除)
    shell> cp /etc/my.cnf /etc/my.cnf.bak
    shell> rm -f /etc/my.cnf

    # 进入安装目录(默认安装在此目录)
    shell> cd /usr/local/mysql

    # 更改本目录的主用户及用户组
    shell> chown -R mysql .
    shell> chgrp -R mysql .

    # 初始化
    shell> bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
    shell> bin/mysql_ssl_rsa_setup

    # 更改本目录的主用户(设为root是为了防止普通用户不小心删除数据库)
    shell> chown -R root .

    # 更改数据存放目录的主用户
    shell> chown -R mysql data

    # 复制my.cnf
    shell> cp support-files//my-default.cnf /etc/my.cnf

    # 官方文档存在这一步,但不明白其用意。我在安装时跳过这一步。
    shell> bin/mysqld_safe --user=mysql &

    # 复制服务启动脚本
    shell> cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

    # 编辑PATH搜索路径
    shell> vi /etc/profile

    # 在profile文件末尾增加两行
    PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
    export PATH

    # 使PATH搜索路径立即生效:
    shell> source /etc/profile

    # 启动MySQL服务
    shell> service mysql start
    # MySQL提示:The server quit without updating PID file问题的解决办法:用命令“ps -A|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

    # 设置开机自动启动服务
    shell> chkconfig mysql on

    # 登录并修改MySQL用户root的密码
    shell> mysql -u root
    mysql> use mysql; mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "123456";
    mysql> flush privileges;
    mysql> exit;

    如有问题,可E-mail与我联系:523161658@qq.com

  • 相关阅读:
    C++获取时间函数
    平滑算法:三次样条插值(Cubic Spline Interpolation)
    为什么想要交谈?
    c++日常小问题
    看板娘
    世界碰撞算法原理和总结(sat gjk)
    转载c++默认初始化文章--google翻译
    从4行代码看右值引用(转载 《程序员》2015年1月刊)
    c++模板特例化 函数模板(非法使用显式模板参数 )
    InverseTransformPoint 函数问题
  • 原文地址:https://www.cnblogs.com/dongjc/p/5225761.html
Copyright © 2020-2023  润新知