当前位置 主页 > 网站技术 > 代码类 >

    MySQL8.0.19安装教程

    栏目:代码类 时间:2020-01-21 12:11

    官网下载安装包:mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz

    安装环境:CentOS Linux release 7.5.1804 (Core)

    解压安装包:

    xz -d mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
    tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar

    环境变量:

    yum install -y gcc gcc-c++ make cmake automake ncurses-devel bison bison-devel tcp_wrappers-devel libaio libaio-devel perl-Data-Dumper net-tools

    创建相关用户和组:

    [root@localhost ~]# groupadd mysql
    [root@localhost ~]# useradd -g mysql -d /home/mysql -m -p mysql mysql

    创建相关目录:

    [root@localhost ~]# mkdir -p /data/mysql/;chown -R mysql.mysql /data/mysql/
    [root@localhost ~]# mkdir -p /data/tmp/;chown -R mysql.mysql /data/tmp/

    编辑配置文件:

    [root@localhost tmp]# vim /etc/my.cnf
    [root@localhost mysql]# cat /etc/my.cnf
    [client]
    port= 3306
    socket = /tmp/mysql.sock
    ## The MySQL server
    [mysqld]
    port = 3306
    socket = /tmp/mysql.sock
    user = mysql
    skip-external-locking
    skip-name-resolve
    #skip-grant-tables
    #skip-networking
    ###################################### dir
    basedir=/usr/local/mysql
    datadir=/data/mysql
    tmpdir=/data/tmp
    secure_file_priv=/data/tmp
    ###################################### some app
    log-error=mysql.err
    pid-file=/data/mysql/mysql.pid
    local-infile=1
    event_scheduler=0
    federated
    default-storage-engine=InnoDB
    #default-time-zone= '+8:00'
    log_timestamps=SYSTEM
    character-set-client-handshake = FALSE
    character-set-server = utf8mb4
    collation-server = utf8mb4_unicode_ci
    init_connect='SET NAMES utf8mb4'
    #fulltext
    innodb_optimize_fulltext_only
    ft_min_word_len=1
    #ft_max_word_len
    innodb_ft_min_token_size=1
    ###################################### memory allocate and myisam configure
    max_connections=3000
    max_connect_errors=10000
    key_buffer_size = 16M
    max_allowed_packet = 16M
    table_open_cache = 10240
    sort_buffer_size = 2M
    read_buffer_size = 2M
    read_rnd_buffer_size = 2M
    join_buffer_size=2M
    myisam_sort_buffer_size = 4M
    #net_buffer_length = 2M
    thread_cache_size = 24
    tmp_table_size=1G
    max_heap_table_size=1G
    #thread_concurrency =48
    ###################################### replication
    server-id = 101096
    log-bin=mysql-bin
    binlog_format=mixed
    max_binlog_size=1G
    log_slave_updates=true
    log_bin_trust_function_creators=true
    binlog_expire_logs_seconds=259200 #binlog过期时间,单位秒
    replicate-ignore-db=mysql
    replicate-ignore-db=test
    replicate-ignore-db=information_schema
    replicate-ignore-db=performance_schema
    replicate-wild-ignore-table=mysql.%
    replicate-wild-ignore-table=test.%
    replicate-wild-ignore-table=information_schema.%
    replicate-wild-ignore-table=performance_schema.%
    lower_case_table_names = 1
    #read_only=1
    master_info_repository=TABLE
    relay_log_info_repository=TABLE
    ###################################### slow-query
    long_query_time=1
    slow_query_log=1
    slow_query_log_file=/data/mysql/slow-query.log
    interactive_timeout=600
    wait_timeout=600
    ###################################### innodb configure
    innodb_file_per_table
    innodb_data_home_dir = /data/mysql
    innodb_log_group_home_dir = /data/mysql
    innodb_buffer_pool_size =4G
    innodb_log_file_size = 1G
    innodb_log_files_in_group = 3
    innodb_log_buffer_size = 32M
    innodb_flush_log_at_trx_commit = 1
    sync_binlog=0
    sql-mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO"
    ##########################################
    [mysqldump]
    quick
    max_allowed_packet = 16M
    [mysql]
    no-auto-rehash
    default-character-set = utf8mb4
    prompt=\\U \\h \\R:\\m:\\s \\d>
    [myisamchk]
    key_buffer_size = 20M
    sort_buffer_size = 20M
    read_buffer = 2M
    write_buffer = 2M
    [mysqlhotcopy]
    interactive-timeout