MySQL 8.0 编译安装

SOSO
2021-09-29 / 0 评论 / 122 阅读 / 正在检测是否收录...

MySQL 8.0编译安装

- 创建用户
[root@localhost]# groupadd mysql
[root@localhost]# useradd -s /sbin/nologin -M -g mysql mysql

[root@localhost soft]# tar zxf mysql-boost-8.0.25.tar.gz 
[root@localhost soft]# cd mysql-8.0.25/
[root@localhost mysql-8.0.25]# cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DSYSCONFDIR=/usr/local/mysql/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8mb4 \
-DDEFAULT_COLLATION=utf8mb4_general_ci \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_BOOST=/opt/soft/mysql-8.0.25/boost
  • my.cnf

    [client]
    #password   = your_password
    port        = 3306
    socket      = /tmp/mysql.sock
    
    [mysqld]
    port        = 3306
    socket      = /tmp/mysql.sock
    datadir = /usr/local/mysql/data
    skip-external-locking
    key_buffer_size = 16M
    max_allowed_packet = 1M
    table_open_cache = 64
    sort_buffer_size = 512K
    net_buffer_length = 8K
    read_buffer_size = 256K
    read_rnd_buffer_size = 512K
    myisam_sort_buffer_size = 8M
    thread_cache_size = 8
    tmp_table_size = 16M
    performance_schema_max_table_instances = 500
    
    explicit_defaults_for_timestamp = true
    #skip-networking
    max_connections = 500
    max_connect_errors = 100
    open_files_limit = 65535
    default_authentication_plugin = mysql_native_password
    
    log-bin=mysql-bin
    binlog_format=mixed
    server-id   = 1
    binlog_expire_logs_seconds = 864000
    early-plugin-load = ""
    
    default_storage_engine = InnoDB
    innodb_file_per_table = 1
    innodb_data_home_dir = /usr/local/mysql/data
    innodb_data_file_path = ibdata1:10M:autoextend
    innodb_log_group_home_dir = /usr/local/mysql/data
    innodb_buffer_pool_size = 16M
    innodb_log_file_size = 5M
    innodb_log_buffer_size = 8M
    innodb_flush_log_at_trx_commit = 1
    innodb_lock_wait_timeout = 50
    
    [mysqldump]
    quick
    max_allowed_packet = 16M
    
    [mysql]
    no-auto-rehash
    
    [myisamchk]
    key_buffer_size = 20M
    sort_buffer_size = 20M
    read_buffer_size = 2M
    write_buffer_size = 2M
    
    [mysqlhotcopy]
    interactive-timeout
  • 设置开机启动

    [root@localhost]# chown -R mysql:mysql /usr/local/mysql/data
    [root@localhost]# /usr/local/mysql/bin/mysqld --initialize-insecure --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
    [root@localhost]# chgrp -R mysql /usr/local/mysql/.
    [root@localhost]# cp support-files/mysql.server /etc/init.d/mysql
    > # cp /init.d/mysql.service /etc/systemd/system/mysql.service
    [root@localhost]# chmod 755 /etc/init.d/mysql
    
    [root@localhost]# cat > /etc/ld.so.conf.d/mysql.conf<<EOF
    /usr/local/mysql/lib
    /usr/local/lib
    EOF
    [root@localhost]# ldconfig
    [root@localhost]# ln -sf /usr/local/mysql/lib/mysql /usr/lib/mysql
    [root@localhost]# ln -sf /usr/local/mysql/include/mysql /usr/include/mysql
  • 设置密码

    SET PASSWORD FOR 'root'@'localhost' = 'password';
    或
    UPDATE mysql.user SET Password=PASSWORD('${DB_Root_Password}') WHERE User='root';
0

评论 (0)

取消