zoukankan      html  css  js  c++  java
  • CentOS 6.3/6.4 Minimal 源码安装 MySQL 5.6.10/5.6.11

    MySQL 5.6正式版发布了,相对于5.5版本作出了不少改进,其源码安装配置方式也有所变化,本文根据实际操作,不断尝试,精确还原了安装的具体步骤。

    环境:CentOS 6.3/6.4 最小化缺省安装,配置好网卡。

    安装MySQL前,确认Internet连接正常,以便下载安装文件。

    先使用 yum -y update 指令升级系统到最新版本。

    本安装将MySQL的数据文件与执行文件分离,如果你打算设置到不同的路径,注意修改对应的执行命令和数据库初始化脚本。

    # 修改防火墙设置,打开3306端口
    vi /etc/sysconfig/iptables
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

    # 重启防火墙使新设置生效
    service iptables restart

    # 新增用户组
    groupadd mysql

    # 新增用户
    useradd mysql -g mysql

    # 新建数据库执行文件目录
    mkdir -p /usr/local/mysql

    # 新建数据库数据文件目录
    mkdir -p /db/mysql/data

    # 编辑PATH搜索路径
    vi /etc/profile
    Append these 2 lines to the end of the file:
    PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
    export PATH

    # 生效PATH搜索路径
    source /etc/profile

    # 编辑hosts文件,加入本机IP和主机名
    vi /etc/hosts
    192.168.211.100      centhost.centdomain

    # 安装编译源码所需的工具和库
    yum -y install wget gcc-c++ ncurses-devel cmake make perl

    # 进入源码压缩包下载目录
    cd /usr/local/src

    # 下载源码压缩包,下载包34M大小,有点慢,等吧。
    wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.10.tar.gz/from/http://cdn.mysql.com/

    # 解压缩源码包
    tar -zxvf mysql-5.6.10.tar.gz

    # 进入解压缩源码目录
    cd mysql-5.6.10

    # 从mysql5.5起,mysql源码安装开始使用cmake了,执行源码编译配置脚本

    cmake \
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
    -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \
    -DDEFAULT_CHARSET=utf8 \
    -DDEFAULT_COLLATION=utf8_general_ci \
    -DWITH_MYISAM_STORAGE_ENGINE=1 \
    -DWITH_INNOBASE_STORAGE_ENGINE=1 \
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 \
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
    -DWITH_MEMORY_STORAGE_ENGINE=1 \
    -DWITH_READLINE=1 \
    -DENABLED_LOCAL_INFILE=1 \
    -DMYSQL_DATADIR=/db/mysql/data \
    -DMYSQL_USER=mysql \
    -DMYSQL_TCP_PORT=3306

    # 编译源码,这一步时间会较长,耐心等待。
    make

    # 安装
    make install

    # 清除安装临时文件
    make clean

    # 修改目录拥有者
    chown -R mysql:mysql /usr/local/mysql
    chown -R mysql:mysql /db/mysql/data

    # 进入安装路径
    cd /usr/local/mysql

    # 执行初始化配置脚本,创建系统自带的数据库和表。
    scripts/mysql_install_db --user=mysql --datadir=/db/mysql/data
    初始化脚本在 /usr/local/mysql/my.cnf 生成了配置文件。需要更改该配置文件的所有者:
    chown -R mysql:mysql /usr/local/mysql
    多说两句:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索"$basedir/my.cnf",在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。

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

    # 启动MySQL服务
    service mysql start

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

    # 修改MySQL用户root的密码
    mysql -u root

    mysql>use mysql;
    mysql>GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";
    mysql>update user set Password = password('123456') where User='root';
    mysql>flush privileges;
    mysql>exit;

    # 可选:运行安全设置脚本,修改MySQL用户root(不是系统的root!)的密码,禁止root远程连接(防止破解密码),移除test数据库和匿名用户,强烈建议生产服务器使用:

    /usr/local/mysql/bin/mysql_secure_installation

    后记:

    2013年3月18日更新:
    如果要使Windows平台下的MySQL和Linux平台下的MySQL协同工作,你需要设置Linux平台下的全局变量lower_case_table_names=1,强制将数据表名称转换为小写(大小写不敏感)。参考我另一篇博文:http://www.cnblogs.com/jlzhou/archive/2013/03/18/2966106.html

  • 相关阅读:
    configure: error: C++ preprocessor "/lib/cpp" fails sanity check See `config.log' for more details
    php7安装swoole
    Navicat 连接Mysql 8.0以上版本报错1251的详细解决方案
    1130
    linux中的 /etc/profile文件centos7
    linux安装php遇到的No package 'sqlite3' found,解决方法:
    ll: command not found
    每日一题 为了工作 2020 0325 第二十三题
    每日一题 为了工作 2020 0324 第二十二题
    每日一题 为了工作 2020 0323 第二十一题
  • 原文地址:https://www.cnblogs.com/jlzhou/p/2951544.html
Copyright © 2011-2022 走看看