zoukankan      html  css  js  c++  java
  • mysql5.6编译安装

    1.安装编译源码所需的工具和库

    yum install gcc gcc-c++ ncurses-devel perl -y

    yum -y install wget gcc-c++ ncurses ncurses-devel cmake make perl bison openssl openssl-devel gcc* libxml2 libxml2-devel curl-devel libjpeg* libpng* freetype*

    2.创建mysql用户和组

    groupadd mysql

    useradd -r -g mysql mysql

    mkdir -p /mydata/mysql

    mkdir -p /mydata/mysql/mysqldb    #创建一个数据目录

    3.编译安装:

    ##注意:红色标注需要修改

    cmake -DCMAKE_INSTALL_PREFIX=/mydata/mysql -DMYSQL_UNIX_ADDR=/mydata/mysql/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/mydata/mysql/mysqldb -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1

    注:重新运行配置,需要删除CMakeCache.txt文件
    rm CMakeCache.txt

    参数解释:

    -DCMAKE_INSTALL_PREFIX=dir_name 设置mysql安装目录
    -DMYSQL_UNIX_ADDR=file_name 设置监听套接字路径,这必须是一个绝对路径名。默认为/tmp/mysql.sock
    -DDEFAULT_CHARSET=charset_name 设置服务器的字符集。
    缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。
    -DDEFAULT_COLLATION=collation_name 设置服务器的排序规则。
    -DWITH_INNOBASE_STORAGE_ENGINE=1
    -DWITH_ARCHIVE_STORAGE_ENGINE=1
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1
    -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 存储引擎选项:

    MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。

    静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1

    可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema)
    -DMYSQL_DATADIR=dir_name 设置mysql数据库文件目录
    -DMYSQL_TCP_PORT=port_num 设置mysql服务器监听端口,默认为3306
    -DENABLE_DOWNLOADS=bool 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。
    注:重新运行配置,需要删除CMakeCache.txt文件
    rm CMakeCache.txt

    4.make

    make

    make install

    5.修改mysql目录所有者和组 

    cd /mydata/mysql

    mkdir mysql_log

    mkdir mysqlbin

    chown -R mysql:mysql .

    cd /mydata/mysql/mysqldb

    chown -R mysql:mysql .

    6.初始化mysql数据库

    cd /mydata/mysql

    scripts/mysql_install_db --user=mysql --datadir=/mydata/mysql/mysqldb

    7.复制mysql服务启动配置文件

    mv /etc/my.cnf /etc/my.cnf.old

    cp /mydata/mysql/support-files/my-default.cnf /etc/my.cnf

    cp support-files/mysql.server /etc/init.d/mysqld

    my.cnf配置为:

    [mysqld]

    # basedir = .....
    datadir =/mydata/mysql/mysqldb
    #服务器关闭交互式连接所等待的秒数
    interactive_timeout=60
    #等待断开连接的时间
    wait_timeout=60
    #临时表内存大小
    tmp_table_size=262144
    #表高速缓
    table_open_cache=2048
    #查询缓存的大小
    #query_cache_size =0
    #group_concat 大小设置
    group_concat_max_len = -1
    #最大连接数
    max_connections=1000
    back_log=102
    key_buffer_size = 256M
    thread_cache_size=64
    #服务器可用核数*2
    thread_concurrency = 16
    #缓冲池大小
    innodb_buffer_pool_size = 10G
    #日志缓存大
    innodb_log_file_size = 2G
    #慢日志位置
    slow_query_log_file=/mydata/mysql/mysql_log/slow_query.log
    #慢日志时间
    long_query_time=1
    #开启慢日志
    slow_query_log=TRUE
    #开启没有用到索引的sql
    #log-queries-not-using-indexes
    ##数据库错误日志位置
    ##log-error=/mnt/Mysql_Log/SqlError.log
    #开启二进制日志
    log-bin=/mydata/mysql/mysqlbin/mysql-bin
    #随机读取缓冲的大小
    read_rnd_buffer_size =8M
    #顺序读取缓冲的大小
    read_buffer_size = 8M
    #排序缓冲大小
    sort_buffer_size = 6M
    tmp_table_size=128M
    #query_cache_size=128M
    query_cache_type=0
    #join table 缓冲的大小
    join_buffer_size = 6M
    #不区分大小写
    lower_case_table_names=1
    innodb_additional_mem_pool_size=2097152
    # port = .....
    # server_id = .....
    socket = /mydata/mysql/mysql.sock
    log_bin_trust_function_creators=1
    # Remove leading # to set options mainly useful for reporting servers.
    # The server defaults are faster for transactions and fast SELECTs.
    # Adjust sizes as needed, experiment to find the optimal values.
    # join_buffer_size = 128M
    # sort_buffer_size = 2M
    # read_rnd_buffer_size = 2M
    max_binlog_size = 500M
    server-id=1
    binlog-do-db=erp_product
    log-bin-index=master-bin-log.index
    sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

    #传输文件大小限制
    max_allowed_packet=20M

    [mysqld_safe]
    socket = /mydata/mysql/mysql.sock

    [client]
    socket = /mydata/mysql/mysql.sock

    [mysql.server]
    socket = /mydata/mysql/mysql.sock

    8.#配置环境变量

    vim /etc/profile

    export PATH=/mydata/mysql/bin:/mydata/mysql/lib:$PATH

    source /etc/profile

    9.启动

    service mysqld start

    chkconfig --level 35 mysqld on

    netstat -tulnp | grep 3306

    mysql -u root -p 密码为空,如果能登陆上,则安装成功。

    mysqladmin -u root password '111'

  • 相关阅读:
    Mali 水题
    树状数组求区间最值
    POJ1125 Stockbroker Grapevine 最短路
    jquery radio取值,checkbox取值,select取值 及选中(引用)
    过滤注入代码的存储过程
    怎么进行项目管理
    现在已经不喜欢注释而喜欢直接看代码了
    风潮唱片总目录及下载地址2009年2月9日更新
    什么时候用存储过程
    sql server 外键 更新(删除)规则
  • 原文地址:https://www.cnblogs.com/byfboke/p/9685642.html
Copyright © 2011-2022 走看看