10分钟实现MariaDB与MySQL在一台服务器同时运行

[root@HE3 ~]#groupadd mariadb -g 513

[root@HE3 ~]#useradd -u 513 -g mariadb -s /sbin/nologin -d /home/mariadb mariadb

 

从MariaDB官网下载二进制安装包至/root目录,本文采用的是目前最新稳定版mariadb-10.1.16

[root@HE3 ~]# tar xvf mariadb-10.1.16-linux-x86_64.tar.gz

[root@HE3 ~]# mv /root/mariadb-10.1.16-linux-x86_64 /usr/local/mariadb

 

[root@HE3 ~]#mkdir -p /data/mariadb

[root@HE3 ~]#chown -R mariadb. /data/mariadb

[root@HE3 ~]#mkdir -p /log/mariadb

[root@HE3 ~]#chown -R mariadb. /log/mariadb

 

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
[root@HE3 ~] #vi /usr/local/mariadb/my.cnf
[client]
port = 3307
socket =  /tmp/mariadb .sock
default-character- set  = utf8
  
[mysql]
default-character- set  = utf8
  
[mysqld]
port = 3307
socket =  /tmp/mariadb .sock
user = mariadb
pid- file  /data/mariadb/mysql .pid
basedir =  /usr/local/mariadb
datadir =  /data/mariadb
open_files_limit = 3072
back_log = 103
max_connections = 800
max_connect_errors = 100000
table_open_cache = 512
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 2M
join_buffer_size = 2M
thread_cache_size = 51
query_cache_size = 32M
tmp_table_size = 96M
max_heap_table_size = 96M
slow_query_log = 1
slow_query_log_file =  /log/mariadb/slow .log
log-error =  /log/mariadb/error .log
long_query_time = 1
server- id  = 2503307
log-bin =  /log/mariadb/mysql-bin
sync_binlog = 1
binlog_cache_size = 4M
max_binlog_cache_size = 8M
max_binlog_size = 1024M
expire_logs_days = 60
key_buffer_size = 32M
read_buffer_size = 1M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 64M
character- set -server = utf8
default-storage-engine = InnoDB
binlog_format = row
innodb_buffer_pool_dump_at_shutdown = 1
innodb_buffer_pool_load_at_startup = 1
#binlog_rows_query_log_events = 1
explicit_defaults_for_timestamp = 1
  
 
transaction_isolation = REPEATABLE-READ
innodb_additional_mem_pool_size = 16M
innodb_buffer_pool_size = 512M
#innodb_data_home_dir =
innodb_data_file_path = ibdata1:1024M:autoextend
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 16M
innodb_log_file_size = 512M
innodb_log_files_in_group = 2
innodb_max_dirty_pages_pct = 50
innodb_file_per_table = 1
innodb_locks_unsafe_for_binlog = 0
wait_timeout = 14400
interactive_timeout = 14400
skip-name-resolve
[mysqldump]
quick
max_allowed_packet = 32M


初始化数据库

[root@HE3 ~]#/usr/local/mariadb/scripts/mysql_install_db --basedir=/usr/local/mariadb --datadir=/data/mariadb --defaults-file=/usr/local/mariadb/my.cnf --user=mariadb


拷贝启停模板至/etc/init.d/下

[root@HE3 ~]#cp -rp /usr/local/mariadb/support-files/mysql.server /etc/init.d/mariadb


编辑该启停脚本变更第46、47、58行为mariadb相关目录,本文示例如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@HE3 ~] #vi /etc/init.d/mariadb
      46 basedir= /usr/local/mariadb
      47 datadir= /data/mariadb
      48 
      49  # Default value, in seconds, afterwhich the script should timeout waiting
      50  # for server start.
      51  # Value here is overriden by value in my.cnf.
      52  # 0 means don't wait at all
      53  # Negative numbers mean to wait indefinitely
      54 service_startup_timeout=900
      55 
      56  # Lock directory for RedHat / SuSE.
      57 lockdir= '/var/lock/subsys'
      58 lock_file_path= "$lockdir/mariadb"


第311行添加唯一参数路径,本文为--defaults-file=/usr/local/mariadb/my.cnf

1
  311       $bindir /mysqld_safe  --defaults- file = /usr/local/mariadb/my .cnf --datadir= "$datadir"  --pid- file = "$mysqld_pid_file_path"  "$@"  > /dev/null  2>&1 &



1
2
3
4
5
6
7
8
[root@HE3 ~] # ps -ef|grep mysql
root     28996  2226  0 16:50 pts /2     00:00:00  grep  mysql
[root@HE3 ~] # /etc/init.d/mysqld start
Starting MySQL. SUCCESS! 
[root@HE3 ~] # ps -ef|grep mysql
root     29008     1  0 16:51 pts /2     00:00:00  /bin/sh  /usr/local/mysql/bin/mysqld_safe  --datadir= /data/mysql  --pid- file = /data/mysql/HE3 .pid
mysql    29754 29008 13 16:51 pts /2     00:00:00  /usr/local/mysql/bin/mysqld  --basedir= /usr/local/mysql  --datadir= /data/mysql  --plugin- dir = /usr/local/mysql/lib/plugin  --user=mysql --log-error= /log/mysql/error .log -- open -files-limit=3072 --pid- file = /data/mysql/HE3 .pid --socket= /tmp/mysql .sock --port=3306
root     29778  2226  0 16:51 pts /2     00:00:00  grep  mysql



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@HE3 ~]# /usr/ local /mysql/bin/mysql -uroot -p -P3306
Enter  password
Welcome  to  the MySQL monitor.  Commands  end  with  or  \g.
Your MySQL  connection  id  is  1
Server version: 5.6.25-log MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle  and / or  its affiliates.  All  rights reserved.
Oracle  is  a registered trademark  of  Oracle Corporation  and / or  its
affiliates. Other names may be trademarks  of  their respective
owners.
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear the  current  input statement.
mysql>  select  version();
+ ------------+
| version()  |
+ ------------+
| 5.6.25-log |
+ ------------+
1 row  in  set  (0.01 sec)
mysql>





[root@HE3 ~]# /etc/init.d/mariadb start

Starting MySQL SUCCESS! 

1
2
3
4
5
6
[root@HE3 ~] # ps -ef|grep mysql
root     29008     1  0 16:51 pts /2     00:00:00  /bin/sh  /usr/local/mysql/bin/mysqld_safe  --datadir= /data/mysql  --pid- file = /data/mysql/HE3 .pid
mysql    29754 29008  0 16:51 pts /2     00:00:00  /usr/local/mysql/bin/mysqld  --basedir= /usr/local/mysql  --datadir= /data/mysql  --plugin- dir = /usr/local/mysql/lib/plugin  --user=mysql --log-error= /log/mysql/error .log -- open -files-limit=3072 --pid- file = /data/mysql/HE3 .pid --socket= /tmp/mysql .sock --port=3306
root     29802     1  0 16:52 pts /2     00:00:00  /bin/sh  /usr/local/mariadb/bin/mysqld_safe  --defaults- file = /usr/local/mariadb/my .cnf --datadir= /data/mariadb  --pid- file = /data/mariadb/HE3 .pid
mariadb  30041 29802  7 16:52 pts /2     00:00:00  /usr/local/mariadb/bin/mysqld  --defaults- file = /usr/local/mariadb/my .cnf --basedir= /usr/local/mariadb  --datadir= /data/mariadb  --plugin- dir = /usr/local/mariadb/lib/plugin  --user=mariadb --log-error= /log/mariadb/error .log -- open -files-limit=3072 --pid- file = /data/mariadb/HE3 .pid --socket= /tmp/mariadb .sock --port=3307
root     30070  2226  0 16:52 pts /2     00:00:00  grep  mysql



1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@HE3 ~]# /usr/ local /mariadb/bin/mysql -uroot -S /tmp/mariadb.sock
Enter  password
Welcome  to  the MariaDB monitor.  Commands  end  with  or  \g.
Your MySQL  connection  id  is  11
Server version: 5.6.25-log MySQL Community Server (GPL)
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab  and  others.
Type  'help;'  or  '\h'  for  help. Type  '\c'  to  clear the  current  input statement.
MariaDB [(none)]>  select  version();
+ -----------------+
| version()       |
+ -----------------+
| 10.1.16-MariaDB |
+ -----------------+
1 row  in  set  (0.00 sec)





 本文转自 dbapower 51CTO博客,原文链接:http://blog.51cto.com/suifu/1834417,如需转载请自行联系原作者


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值