zoukankan      html  css  js  c++  java
  • Mysql5.6 for Centos6.5源码编译安装

    ## 说明 不同服务器需要改变 server_id ,同一台机器上需要改变 port


    1. 关闭防火墙
    [root@mysql ~]# service iptables status --查看防火墙状态
    [root@mysql ~]# service iptables stop --关闭防火墙
    [root@mysql ~]# chkconfig iptables off --永久关闭
    [root@mysql ~]# vim /etc/sysconfig/selinux
    SELINUX=disabled

    2. 配置sysctl.conf
    生产环境下建议根据情况配置,虚拟机安装可以不设置

    3. 检查操作系统上是否已经安装了mysql,如果有进行卸载
    [root@mysql yum.repos.d]# rpm -qa |grep mysql
    [root@mysql yum.repos.d]# yum remove mysql

    4. 下载mysql源码包
    https://dev.mysql.com/downloads/file/?id=469012

    5. 添加用户和组
    [root@mysql u01]# userdel -r mysql --删除原先的mysql用户 -r会删掉附带的group
    [root@mysql u01]# groupadd mysql
    [root@mysql u01]# useradd -d /home/mysql -g mysql -m mysql
    [root@mysql u01]# passwd mysql
    Changing password for user mysql.
    New password:
    BAD PASSWORD: it is based on a dictionary word
    Retype new password:
    passwd: all authentication tokens updated successfully.
    [root@mysql u01]# id mysql
    uid=500(mysql) gid=500(mysql) groups=500(mysql)

    6. 配置mysql环境变量
    [mysql@mysql ~]$ vim .bash_profile
    # .bash_profile

    # Get the aliases and functions
    if [ -f ~/.bashrc ]; then
    . ~/.bashrc
    fi

    # User specific environment and startup programs

    PATH=$PATH:$HOME/bin:/u01/my3306/bin

    export PATH
    [mysql@mysql ~]$ source .bash_profile

    7. 创建目录及授权
    [root@mysql u01]# cd /u01
    [root@mysql u01]# mkdir -p /u01/my3306/data
    [root@mysql u01]# mkdir -p /u01/my3306/log/iblog
    [root@mysql u01]# mkdir -p /u01/my3306/log/binlog
    [root@mysql u01]# mkdir -p /u01/my3306/run
    [root@mysql u01]# mkdir -p /u01/my3306/tmp
    [root@mysql u01]# chown -R mysql:mysql /u01/my3306
    [root@mysql u01]# chmod 755 /u01/my3306

    8. 解压mysql
    [root@mysql u01]# tar -xzvf mysql-5.6.36.tar.gz

    9. 配置yum源,安装cmakle及一些必备的包,要求2.6版本及以上
    yum install -y cmake gcc gcc-c++ ncurses-devel bison zlib libxml openssl

    10. 编译并安装
    cmake
    -DCMAKE_INSTALL_PREFIX=/u01/my3306
    -DINSTALL_DATADIR=/u01/my3306/data
    -DDEFAULT_CHARSET=utf8
    -DDEFAULT_COLLATION=utf8_general_ci
    -DEXTRA_CHARSETS=all --
    -DWITH_SSL=yes --安全套接字
    -DWITH_EMBEDDED_SERVER=1
    -DENABLED_LOCAL_INFILE=1
    -DWITH_MYISAM_STORAGE_ENGINE=1
    -DWITH_INNOBASE_STORAGE_ENGINE=1
    -DWITH_ARCHIVE_STORAGE_ENGINE=1
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1
    -DWITH_FEDERATED_STORAGE_ENGINE=1
    -DWITH_PARTITION_STORAGE_ENGINE=1
    -DMYSQL_UNIX_ADDR=/u01/my3306/run/mysql.sock
    -DMYSQL_TCP_PORT=3306
    -DENABLED_LOCAL_INFILE=1
    -DSYSCONFDIR=/etc
    -DWITH_READLINE=on

    [root@mysql mysql-5.6.36]# cd mysql-5.6.36
    [root@mysql mysql-5.6.36]# cmake -DCMAKE_INSTALL_PREFIX=/u01/my3306 -DINSTALL_DATADIR=/u01/my3306/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_SSL=yes -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/u01/my3306/run/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DSYSCONFDIR=/etc -DWITH_READLINE=on
    [root@mysql mysql-5.6.36]# make
    [root@mysql mysql-5.6.36]# make install

    11. 配置mysql参数
    [root@mysql my3306]# pwd
    /u01/my3306
    [root@mysql my3306]# cat my.cnf
    [client]
    port=3306
    socket=/u01/my3306/mysql.sock

    [mysql]
    pid_file=/u01/my3306/run/mysqld.pid

    [mysqld]
    autocommit=1
    general_log=off
    explicit_defaults_for_timestamp=true

    # system
    basedir=/u01/my3306
    datadir=/u01/my3306/data
    max_allowed_packet=1g
    max_connections=3000
    max_user_connections=2800
    open_files_limit=65535
    pid_file=/u01/my3306/run/mysqld.pid
    port=3306
    server_id=101
    skip_name_resolve=ON
    socket=/u01/my3306/run/mysql.sock
    tmpdir=/u01/my3306/tmp

    #binlog
    log_bin=/u01/my3306/log/binlog/binlog
    binlog_cache_size=32768
    binlog_format=row
    expire_logs_days=7
    log_slave_updates=ON
    max_binlog_cache_size=2147483648
    max_binlog_size=524288000
    sync_binlog=100

    #logging
    log_error=/u01/my3306/log/error.log
    slow_query_log_file=/u01/my3306/log/slow.log
    log_queries_not_using_indexes=0
    slow_query_log=1
    log_slave_updates=ON
    log_slow_admin_statements=1
    long_query_time=1

    #relay
    relay_log=/u01/my3306/log/relaylog
    relay_log_index=/u01/my3306/log/relay.index
    relay_log_info_file=/u01/my3306/log/relay-log.info

    #slave
    slave_load_tmpdir=/u01/my3306/tmp
    slave_skip_errors=OFF


    #innodb
    innodb_data_home_dir=/u01/my3306/log/iblog
    innodb_log_group_home_dir=/u01/my3306/log/iblog
    innodb_adaptive_flushing=ON
    innodb_adaptive_hash_index=ON
    innodb_autoinc_lock_mode=1
    innodb_buffer_pool_instances=8

    #default
    innodb_change_buffering=inserts
    innodb_checksums=ON
    innodb_buffer_pool_size= 128M
    innodb_data_file_path=ibdata1:32M;ibdata2:16M:autoextend
    innodb_doublewrite=ON
    innodb_file_format=Barracuda
    innodb_file_per_table=ON
    innodb_flush_log_at_trx_commit=1
    innodb_flush_method=O_DIRECT
    innodb_io_capacity=1000
    innodb_lock_wait_timeout=10
    innodb_log_buffer_size=67108864
    innodb_log_file_size=1048576000
    innodb_log_files_in_group=4
    innodb_max_dirty_pages_pct=60
    innodb_open_files=60000
    innodb_purge_threads=1
    innodb_read_io_threads=4
    innodb_stats_on_metadata=OFF
    innodb_support_xa=ON
    innodb_use_native_aio=OFF
    innodb_write_io_threads=10

    [mysqld_safe]
    [root@mysql my3306]# chown -R mysql:mysql /u01/my3306

    12. 初始化mysql脚本
    [root@mysql my3306]# ./scripts/mysql_install_db --defaults-file=/u01/my3306/my.cnf --datadir=/u01/my3306/data --user=mysql

    13. 启动mysql
    [mysql@mysql bin]$ ./mysqld_safe --defaults-file=/u01/my3306/my.cnf --user=mysql &
    [1] 17237
    [mysql@mysql bin]$ 170612 06:37:02 mysqld_safe Logging to '/u01/my3306/log/error.log'.
    170612 06:37:02 mysqld_safe Starting mysqld daemon with databases from /u01/my3306/data

    [mysql@mysql bin]$ mysql
    Welcome to the MySQL monitor. Commands end with ; or g.
    Your MySQL connection id is 2
    Server version: 5.6.36-log Source distribution

    Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.

    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

    mysql>

    mysql> show databases;
    +--------------------+
    | Database |
    +--------------------+
    | information_schema |
    | mysql |
    | performance_schema |
    | test |
    +--------------------+
    4 rows in set (0.10 sec)

  • 相关阅读:
    关于c#的知识博客
    sql server 查看列备注、类型、字段大小
    oracle 字符串分割函数
    sql server 字符串分割函数
    Microsoft.Office.Interop.Excel.ApplicationClass can not embedded 的问题
    web.xml文件配置
    解决FusionCharts报表中文乱码问题
    oracle树结构查询
    Myeclipse复制项目后部署出错解决方案
    jquery autocomplete参数说明
  • 原文地址:https://www.cnblogs.com/andy6/p/9546125.html
Copyright © 2011-2022 走看看