MySQL(总)

双实例搭建(自用)

2018-12-29  本文已影响0人  飞翔的Tallgeese

本文不具备可读性

以前这部分写在主从的搭建里面,搞的乱糟糟的,这里只是单独迁移出来留做备用


#3306实例

创建用户组

groupadd mysql

创建用户,设置mysql为禁止登陆系统,设置用户目录为/usr/local/mysql,并且设置后不创建该路径(-MN)

useradd -g mysql -s /sbin/nologin -d /usr/local/mysql -MN mysql

设置下载解压路径为/opt/mysql并创建

mkdir -p /opt/mysql

设置使用3306端口的实例所使用的数据文件路径为/data/mysql/mysql3306并创建

mkdir /data/mysql/mysql3306/{data,logs,tmp} -p

修改路径权限

chown -R mysql.mysql /opt/mysql

chown -R mysql.mysql /data

下载安装5.7.22版本

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

tar -xf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz

mv  mysql-5.7.22-linux-glibc2.12-x86_64 /opt/mysql/

做软链接到/usr/local/mysql

ln -s /opt/mysql/mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql

chown -R mysql.mysql /usr/local/mysql

拷贝一份my3306.cnf(在后面会贴出)到/data/mysql/mysql3306/下

执行初始化

/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf --initialize 

没有任何返回,说明初始化成功(最好看一下/data/mysql/mysql3306/data/error.log)

#3307实例

接下来,创建3307的相关路径

mkdir /data/mysql/mysql3307/{data,logs,tmp} -p

修改路径权限

chown -R mysql.mysql /data

拷贝一份my3307.cnf到/data/mysql/mysql3307/下

执行初始化

/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/my3307.cnf --initialize 

启动2个实例

/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3306/my3306.cnf &

/usr/local/mysql/bin/mysqld --defaults-file=/data/mysql/mysql3307/my3307.cnf &

成功的话会看到2个进程号

关于登陆密码

cat /data/mysql/mysql3307/data/error.log |grep 'temporary password'

可以得到临时密码,对密码进行修改后可以进行登陆操作

my3306.cnf如下

(注意其中的server-id,命名规则为ip最后3位+端口号,我这里就是1073306)

(此外前文提到还需要my3307.cnf,只需要sed把3306.cnf里关于3306的替换为3307即可


[client]

port            = 3306

socket          = /tmp/mysql3306.sock

[mysql]

prompt="\\u@\\h [\\d]>"

#pager="less -i -n -S"

#tee=/opt/mysql/query.log

no-auto-rehash

[mysqld]

#misc

user = mysql

basedir = /usr/local/mysql

datadir = /data/mysql/mysql3306/data

port = 3306

socket = /tmp/mysql3306.sock

event_scheduler = 0

tmpdir = /data/mysql/mysql3306/tmp

#timeout

interactive_timeout = 300

wait_timeout = 300

#character set

character-set-server = utf8

open_files_limit = 65535

max_connections = 100

max_connect_errors = 100000

lower_case_table_names =1

#

explicit_defaults_for_timestamp=1

#symi replication

#rpl_semi_sync_master_enabled=1

#rpl_semi_sync_master_timeout=1000 # 1 second

#rpl_semi_sync_slave_enabled=1

#logs

log-output=file

slow_query_log = 1

slow_query_log_file = slow.log

log-error = error.log

pid-file = mysql.pid

long_query_time = 1

#log-slow-admin-statements = 1

#log-queries-not-using-indexes = 1

log-slow-slave-statements = 1

#binlog

#binlog_format = STATEMENT

binlog_format = row

server-id = 1073306

log-bin = /data/mysql/mysql3306/logs/mysql-bin

binlog_cache_size = 1M

max_binlog_size = 256M

sync_binlog = 0

expire_logs_days = 10

#procedure

log_bin_trust_function_creators=1

#GTID

gtid-mode = on

enforce-gtid-consistency=on

log-slave-updates=1

#relay log

skip_slave_start = 1

max_relay_log_size = 128M

relay_log_purge = 1

relay_log_recovery = 1

relay-log=relay-bin

relay-log-index=relay-bin.index

#slave-skip-errors=1032,1053,1062

#skip-grant-tables

#buffers & cache

table_open_cache = 2048

table_definition_cache = 2048

table_open_cache = 2048

max_heap_table_size = 96M

sort_buffer_size = 128K

join_buffer_size = 128K

thread_cache_size = 200

query_cache_size = 0

query_cache_type = 0

query_cache_limit = 256K

query_cache_min_res_unit = 512

thread_stack = 192K

tmp_table_size = 96M

key_buffer_size = 8M

read_buffer_size = 2M

read_rnd_buffer_size = 16M

bulk_insert_buffer_size = 32M

#myisam

myisam_sort_buffer_size = 128M

myisam_max_sort_file_size = 10G

myisam_repair_threads = 1

#innodb

innodb_buffer_pool_size = 100M

innodb_buffer_pool_instances = 1

innodb_data_file_path = ibdata1:100M:autoextend

innodb_flush_log_at_trx_commit = 2

innodb_log_buffer_size = 8M

innodb_log_file_size = 100M

innodb_log_files_in_group = 3

innodb_max_dirty_pages_pct = 50

innodb_file_per_table = 1

innodb_rollback_on_timeout

innodb_status_file = 1

innodb_io_capacity = 2000

transaction_isolation = READ-COMMITTED

innodb_flush_method = O_DIRECT

loose_tokudb_cache_size=100M

loose_tokudb_directio=ON

loose_tokudb_fsync_log_period=1000

loose_tokudb_commit_sync=0

上一篇下一篇

猜你喜欢

热点阅读