1、基础信息

数据类型 版本
MariaDB 11.4.5

2、下载

1
sudo wget https://mirrors.xtom.com.hk/mariadb///mariadb-11.4.5/bintar-linux-systemd-x86_64/mariadb-11.4.5-linux-systemd-x86_64.tar.gz

3、创建授权用户以及数据存放目录

1
2
3
4
5
sudo useradd -M -s /sbin/nologin mysql

sudo mkdir -p /data/mysql

sudo chown -R mysql:mysql /data/mysql

4、解压到指定目录

1
sudo tar xf /usr/local/src/mariadb-10.11.9-linux-systemd-x86_64.tar.gz -C usr/local/mysql --strip-componets=1

5、数据初始化

1
sudo ./scripts/mariadb-install-db --defaults-file=/etc/my.cnf --skip-name-resolve --user=mysql --datadir=/data/mariadb --basedir=/usr/local/mariadb

6、添加到系统服务中

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
cat << eof | sudo tee /usr/lib/systemd/system/mysql-server.service
[Unit]
Description=MySQL Community Server
After=network.target
After=syslog.target

[Service]
PIDFile=/data/mariadb/mysql.pid
ExecStart=/usr/local/mariadb/bin/mysqld_safe --datadir=/data/mariadb --user=mysql
ExecReload=/bin/kill -s HUP \$MAINPID
ExecStop=/bin/kill -s QUIT \$MAINPID
TimeoutSec=600
Restart=always
PrivateTmp=false

[Install]
WantedBy=multi-user.target
eof

7、设置初始化root密码

1
2
3
4
5
alter user 'root'@localhost identified by '#mI0hb7tR&on4sz&';

#mI0hb7tR&on4sz&

$2y$10$RX393UQGhCxKZvGPgJ9B/.us1LpqrjjIbqHAVdEOP7ZKzWZiCcSBm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
cat << eof | sudo tee /etc/my.cnf
[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
port = 2365
socket = /tmp/mysql.sock
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
basedir = /usr/local/mysql
datadir = /data/mysql
pid-file = /data/mysql/mysql.pid
user = mysql
bind-address = 0.0.0.0
server-id = 1
skip-name-resolve
back_log = 300
max_connections = 1000
max_connect_errors = 6000
open_files_limit = 65535
table_open_cache = 128
max_allowed_packet = 16M
binlog_cache_size = 1M
max_heap_table_size = 64M
tmp_table_size = 64M
read_buffer_size = 2M
read_rnd_buffer_size = 8M
sort_buffer_size = 8M
join_buffer_size = 8M
key_buffer_size = 64M
thread_cache_size = 8
query_cache_type = 1
query_cache_size = 64M
query_cache_limit = 2M
ft_min_word_len = 4
log_bin = mysql-bin
binlog_format = mixed
expire_logs_days = 30
log_error = /data/mysql/mysql-error.log
slow_query_log = 1
long_query_time = 1
slow_query_log_file = /data/mysql/mysql-slow.log
performance_schema = 0
skip-external-locking
default_storage_engine = InnoDB
innodb_file_per_table = 1
innodb_open_files = 500
innodb_buffer_pool_size = 4G
innodb_write_io_threads = 4
innodb_read_io_threads = 4
innodb_purge_threads = 1
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 16M
innodb_log_file_size = 256M
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 120
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 64M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
interactive_timeout = 600
wait_timeout = 600

[mysqldump]
quick
max_allowed_packet = 64M

[myisamchk]
key_buffer_size = 64M
sort_buffer_size = 64M
read_buffer = 16M
write_buffer = 16M
eof