Linux下安装mysql-8.0.15

1、下载安装文件

wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.15-linux-glibc2.12-x86_64.tar.xz

 

2、解压安装文件

tar xf mysql-8.0.15-linux-glibc2.12-x86_64.tar.xz 

迁移至 /usr/local/mysql 目录下

 

3、创建mysql用户

useradd mysql

 

4、配置环境变量

vim /etc/profile

source /etc/profile

export MYSQL_HOME=/usr/local/mysql

export PATH=$MYSQL_HOME/bin:$PATH

 

5、修改my.cnf

配置 

basedir = /home/mysql

datadir = /home/mysql/data/

innodb_undo_directory = /home/mysql/undo_log

 log_error                      = /home/mysql/sql_log/mysql-error.log

 

6、初始化

mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/home/mysql/data

 

7、启动

mysqld start

查看初始密码

grep password mysql-error.log 

修改root密码

alter user user() identified by '123456'

创建普通用户

CREATE USER abc IDENTIFIED BY '1234567';    

GRANT ALL PRIVILEGES ON abc.* TO 'abc'@'%';

flush privileges;  

 

8、附my.cnf文件

[client]
port            = 3306
socket          = /home/mysql/data/mysql.sock
[mysqld]
# Skip #
skip_name_resolve              = 1
skip-external-locking          = 1 
symbolic-links= 0
# GENERAL #
user = mysql
default_storage_engine = InnoDB
character-set-server = utf8
socket  = /home/mysql/data/mysql.sock
pid_file = /home/mysql/data/mysqld.pid
basedir = /home/mysql
log_error=/home/mysql/sql_log/mysql_1302.err
port = 3306
bind-address = 0.0.0.0
explicit_defaults_for_timestamp = off
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
sql_mode=NO_ENGINE_SUBSTITUTION
#read_only=on
# MyISAM #
key_buffer_size                = 32M
#myisam_recover                 = FORCE,BACKUP

# undo log #
innodb_undo_directory = /home/mysql/undo_log
innodb_undo_tablespaces = 16

# SAFETY #
max_allowed_packet             = 100M
max_connect_errors             = 1000000
sysdate_is_now                 = 1
#innodb	= FORCE
#innodb_strict_mode = 1
secure-file-priv=/home/mysql/sql_log
default_authentication_plugin='mysql_native_password'
# Replice #
 server-id = 1306
 relay_log = mysqld-relay-bin
 gtid_mode = on
 enforce-gtid-consistency
 log-slave-updates = on
 master_info_repository =TABLE
 relay_log_info_repository =TABLE


# group replication specific options
#plugin-load=group_replication.so
#group_replication=FORCE_PLUS_PERMANENT
#transaction-write-set-extraction=XXHASH64
#loose-group_replication_start_on_boot=ON
#loose-group_replication_bootstrap_group=OFF
#loose-group_replication_group_name='aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
#group_replication_local_address='10.102.13.2:33061'
#group_replication_group_seeds='10.102.13.3:33061,10.102.13.5:33061'

# DATA STORAGE #
 datadir = /home/mysql/data/
 tmpdir	= /tmp
 
# BINARY LOGGING #
 log_bin = /home/mysql/sql_log/mysql-bin
 max_binlog_size = 1000M
 binlog_format = row
 expire_logs_days = 7
# sync_binlog = 1

 # CACHES AND LIMITS #
 tmp_table_size                 = 32M
 max_heap_table_size            = 32M
 max_connections                = 4000
 thread_cache_size              = 2048
 open_files_limit               = 65535
 table_definition_cache         = 4096
 table_open_cache               = 4096
 sort_buffer_size               = 2M
 read_buffer_size               = 2M
 read_rnd_buffer_size           = 2M
# thread_concurrency             = 24
 join_buffer_size = 1M
# table_cache = 32768
 thread_stack = 512k
 max_length_for_sort_data = 16k


 # INNODB #
 innodb_flush_method            = O_DIRECT
 innodb_log_buffer_size = 16M
 innodb_flush_log_at_trx_commit = 2
 innodb_file_per_table          = 1
 innodb_buffer_pool_size        = 2G
 #innodb_buffer_pool_instances = 8
 innodb_stats_on_metadata = off
 innodb_open_files = 8192
 innodb_read_io_threads = 16
 innodb_write_io_threads = 16
 innodb_io_capacity = 20000
 innodb_thread_concurrency = 0
 innodb_lock_wait_timeout = 60
 innodb_old_blocks_time=1000
 innodb_use_native_aio = 1
 innodb_purge_threads=1
 innodb_change_buffering=all
 innodb_log_file_size = 128M
 innodb_log_files_in_group = 3
 innodb_data_file_path  = ibdata1:1024M:autoextend
 
 innodb_rollback_on_timeout=on
 # LOGGING #
 log_error                      = /home/mysql/sql_log/mysql-error.log
 # log_queries_not_using_indexes  = 1
 # slow_query_log                 = 1
  slow_query_log_file            = /home/mysql/sql_log/slowlog_1305.log

 # TimeOut #
 #interactive_timeout = 30
 #wait_timeout        = 30
 #net_read_timeout = 60

[mysqldump]
quick
max_allowed_packet = 100M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

 

你可能感兴趣的:(数据库)