zoukankan      html  css  js  c++  java
  • 源码安装mysql 5.7.19数据库

    1.系统要求
    yum install -y cmake make gcc gcc-c++ bison  ncurses ncurses-devel
     
    2.创建用户和组
    groupadd mysql && useradd -g mysql mysql -s /bin/false
     
    3.创建数据库安装目录
    mkdir /mysql /mysql/data /mysql/log 
    chown -R mysql:mysql  /mysql
    /mysql/data  --数据库目录
    /mysql/log    --错误日志和慢查询日志
     
    4.解压源码文件和boost文件
    下载:http://ftp.kaist.ac.kr/mysql/Downloads/MySQL-5.7/mysql-5.7.19.tar.gz
    下载:https://ncu.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz
    cd /usr/local
    tar -zxvf mysql-5.7.19.tar.gz
    tar -zxvf boost_1_59_0.tar.gz 
     
    cd /usr/local/mysql-5.7.19
    ####################################################
    5.编译生成MakeFile文件
    cmake . 
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
    -DMYSQL_DATADIR=/mysql/data  
    -DDEFAULT_CHARSET=utf8mb4 
    -DDEFAULT_COLLATION=utf8mb4_general_ci 
    -DDOWNLOAD_BOOST=1 
    -DWITH_BOOST=/usr/local/src/boost_1_59_0 
    -DSYSCONFDIR=/etc 
    -DWITH_INNOBASE_STORAGE_ENGINE=1 
    -DWITH_MYISAM_STORAGE_ENGINE=1 
    -DWITH_EMBEDDED_SERVER=1 
    -DWITH_FEDERATED_STORAGE_ENGINE=1 
    -DWITH_PARTITION_STORAGE_ENGINE=1 
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1
    -DENABLED_LOCAL_INFILE=1
    -DENABLE_DTRACE=0
    -DWITH_READLINE=1
    -DWITH_DEBUG=0 
     
    ######################################################
    -DCMAKE_INSTALL_PREFIX=/usr/local/mysql   //安装目录
    -DMYSQL_DATADIR=/mysql/data     //数据库存放目录
    -DWITH_MYISAM_STORAGE_ENGINE=1 //安装myisam存储引擎
    -DWITH_INNOBASE_STORAGE_ENGINE=1 //安装innodb存储引擎
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 //安装archive存储引擎
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 //安装blackhole存储引擎
    -DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
    -DDEFAULT_CHARSET=utf8mb4   //使用utf8字符
    -DDEFAULT_COLLATION=utf8mb4_general_ci //校验字符
    -DMYSQL_TCP_PORT=3306 //MySQL监听端口
    -DMYSQL_USER=mysql //MySQL用户名
    -DSYSCONFDIR=/etc //MySQL配辑文件
    -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock //Unix socket 文件路径
    -DWITH_READLINE=1 //快捷键功能
    -DWITH_SSL=yes //SSL
    -DWITH_PARTITION_STORAGE_ENGINE=1 //安装数据库分区
    -DINSTALL_PLUGINDIR=/usr/local/mysql/plugin //插件文件及配置路径
    -DWITH_DEBUG=0 禁用debug(默认为禁用)
     
    6.编译和安装
    make && make install 
     
     
    7.配置开机启动项
    cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
    chmod +x /etc/init.d/mysql
    chkconfig --add mysql
    chkconfig mysql on
     
     
     
    8.配置文件
    cat > /etc/my.cnf << EOF
    [client]
    port = 3306
    socket = /tmp/mysql.sock
    default-character-set = utf8mb4
     
    [mysqld]
    port = 3306
    socket = /tmp/mysql.sock
     
    basedir = /usr/local/mysql
    datadir = /mysql/data
    pid-file = /mysql/data/mysql.pid
    user = mysql
    #bind-address = 0.0.0.0
    server-id = 1
     
    #init-connect = 'SET NAMES utf8mb4'
    character-set-server = utf8mb4
     
    #skip-name-resolve
    #skip-networking
    back_log = 300
     
    max_connections = 1000
    max_connect_errors = 6000
    open_files_limit = 65535
    table_open_cache = 128
    max_allowed_packet = 4M
    binlog_cache_size = 1M
    max_heap_table_size = 8M
    tmp_table_size = 16M
     
    read_buffer_size = 2M
    read_rnd_buffer_size = 8M
    sort_buffer_size = 8M
    join_buffer_size = 8M
    key_buffer_size = 4M
     
    thread_cache_size = 8
     
    query_cache_type = 1
    query_cache_size = 8M
    query_cache_limit = 2M
     
    #ft_min_word_len = 4
     
    log_bin = mysql-bin
    binlog_format = mixed
    expire_logs_days = 30
     
    log_error = /mysql/log/mysql-error.log
    slow_query_log = 1
    long_query_time = 1
    slow_query_log_file = /mysql/log/mysql-slow.log
     
    performance_schema = 0
    explicit_defaults_for_timestamp
     
    #lower_case_table_names = 1
     
    skip-external-locking
     
    default_storage_engine = InnoDB
    #default-storage-engine = MyISAM
    innodb_file_per_table = 1
    innodb_open_files = 500
    innodb_buffer_pool_size = 64M
    innodb_write_io_threads = 4
    innodb_read_io_threads = 4
    innodb_thread_concurrency = 0
    innodb_purge_threads = 1
    innodb_flush_log_at_trx_commit = 2
    innodb_log_buffer_size = 2M
    innodb_log_file_size = 32M
    innodb_log_files_in_group = 3
    innodb_max_dirty_pages_pct = 90
    innodb_lock_wait_timeout = 120
     
    bulk_insert_buffer_size = 8M
    #myisam_sort_buffer_size = 8M
    #myisam_max_sort_file_size = 10G
    #myisam_repair_threads = 1
     
    interactive_timeout = 28800
    wait_timeout = 28800
     
    [mysqldump]
    quick
    max_allowed_packet = 16M
     
    [myisamchk]
    key_buffer_size = 8M
    sort_buffer_size = 8M
    read_buffer = 4M
    write_buffer = 4M
    EOF
     
     
    9.初始化安全安装
    /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/mysql/data
     
    注: 之前版本mysql_install_db是在mysql_basedir/script下,5.7放在了mysql_install_db/bin目录下,且已被废弃
    “-initialize”会生成一个随机密码(~/.mysql_secret),而”-initialize-insecure”不会生成密码
    –datadir目标目录下不能有数据文件
     
     
    10.启动数据库
    service mysql start
     
    11.修改密码

    cd /usr/local/mysql/bin
    ./mysql -uroot -p
    grant all privileges on *.* to 'root'@'%' identified by '-----pwd-----' with grant option;
    update mysql.user set authentication_string=password('-----pwd-----') where user = 'root';
    flush privileges;

  • 相关阅读:
    < java.util >-- Set接口
    Codeforces 627 A. XOR Equation (数学)
    Codeforces 161 B. Discounts (贪心)
    Codeforces 161 D. Distance in Tree (树dp)
    HDU 5534 Partial Tree (完全背包变形)
    HDU 5927 Auxiliary Set (dfs)
    Codeforces 27E. Number With The Given Amount Of Divisors (暴力)
    lght oj 1257
    Codeforces 219D. Choosing Capital for Treeland (树dp)
    Codeforces 479E. Riding in a Lift (dp + 前缀和优化)
  • 原文地址:https://www.cnblogs.com/doseoer/p/7593340.html
Copyright © 2011-2022 走看看