千家信息网

MySQL多实例配置文件及启动文件

发表于:2025-02-03 作者:千家信息网编辑
千家信息网最后更新 2025年02月03日,-----------mysql多实例配置文件[root@db01/]# cat /data/3307/my.cnf[client]port = 3307 #<== 端口号,可修改socket = /
千家信息网最后更新 2025年02月03日MySQL多实例配置文件及启动文件

-----------mysql多实例配置文件

[root@db01/]# cat /data/3307/my.cnf


[client]

port = 3307 #<== 端口号,可修改

socket = /data/3307/mysql.sock

[mysql]

no-auto-rehash

[mysqld]

user = mysql #<== 所属用户,根据实际情况而定

port = 3307 #<== 端口号,可修改

socket = /data/3307/mysql.sock #<== 指定socket文件位置

basedir = /application/mysql #<== 安装程序目录

datadir = /data/3307/data #<== mysql数据文件目录

open_files_limit = 1024 #<== 文件描述符限制

back_log = 600 #<== 系统预处理等待队列连接数量

max_connections = 800 #<== 最大连接数

max_connect_errors = 3000 #<== 最大错误数

table_cache = 614 #<== 表缓存

external-locking = FALSE #<== 外部锁

max_allowed_packet =8M #<== 最大允许的包大小

sort_buffer_size = 1M #<== 排序缓冲大小

join_buffer_size = 1M #<== 连接缓冲大小

thread_cache_size = 100 #<== 线程缓存数量

thread_concurrency = 2 #<== 线程并发量

query_cache_size = 2M #<== 请求缓存大小

query_cache_limit = 1M #<== 请求缓存限制大小

query_cache_min_res_unit = 2k #<== 请求缓存最小保留单元大小

#default_table_type = InnoDB

thread_stack = 192K #<== 线程数大小

#transaction_isolation = READ-COMMITTED

tmp_table_size = 2M #<== 临时表大小

max_heap_table_size = 2M #<== 最大堆表大小

#long_query_time = 1 #<== 长请求时间1s

#log_long_format

#log-error = /data/3307/error.log #<== 错误日志

#log-slow-queries = /data/3307/slow.log #<== man查询日志

pid-file = /data/3307/mysql.pid #<== pid文件位置

#log-bin = /data/3307/mysql-bin #<== binlog开启及位置

relay-log = /data/3307/relay-bin #<== relaylog开启及位置

relay-log-info-file = /data/3307/relay-log.info #<== reloylog信息文件

binlog_cache_size = 1M #<== binlog缓存大小

max_binlog_cache_size = 1M #<== 最大binlog缓存大小

max_binlog_size = 2M

expire_logs_days = 7

key_buffer_size = 16M

read_buffer_size = 1M

read_rnd_buffer_size = 1M

bulk_insert_buffer_size = 1M

#myisam_sort_buffer_size = 1M

#myisam_max_sort_file_size = 10G

#myisam_max_extra_sort_file_size = 10G

#myisam_repair_threads = 1

#myisam_recover

lower_case_table_names = 1 #<== 忽略表名大小写

skip-name-resolve #<== 跳过名称解析

slave-skip-errors = 1032,1062 #<== 主从同步,从库错误忽略代码列表

replicate-ignore-db=mysql #<== 复制忽略数据库:mysql

server-id = 3 #<== 设置server-id 主从复制不能一样

innodb_additional_mem_pool_size = 4M

innodb_buffer_pool_size = 32M

innodb_data_file_path =ibdata1:128M:autoextend

innodb_file_io_threads = 4

innodb_thread_concurrency = 8

innodb_flush_log_at_trx_commit = 2

innodb_log_buffer_size = 2M

innodb_log_file_size = 4M

innodb_log_files_in_group = 3

innodb_max_dirty_pages_pct = 90

innodb_lock_wait_timeout = 120

innodb_file_per_table = 0

[mysqldump]

quick

max_allowed_packet = 2M

[mysqld_safe]

log-error=/data/3307/mysql_3307.err #<== 日志文件

pid-file=/data/3307/mysqld.pid


------------------------------------------------------------------------------------------------------------------------------------

-----------mysql多实例启动文件

[root@db01/]# cat /data/3308/mysql

#!/bin/sh

################################################

#this scripts iscreated by tudou at 2016-06-09

#tudou QQ:1097857032 1+1=3

#blog:https://blog.51cto.com/user_index.php?action=addblog_new

################################################

#init

port=3307

mysql_user="root"

mysql_pwd="123456" #<== 设定的密码

CmdPath="/application/mysql/bin"

mysql_sock="/data/${port}/mysql.sock" #<== 进入多实例数据库需要mysql.sock

#startup function

function_start_mysql()

{

if [ ! -e "$mysql_sock" ];then

printf "Starting MySQL...\n"

/bin/sh ${CmdPath}/mysqld_safe--defaults-file=/data/${port}/my.cnf 2>&1 > /dev/null &

else

printf "MySQL is running...\n"

exit

fi

}

#stop function

function_stop_mysql()

{

if [ ! -e "$mysql_sock" ];then

printf "MySQL is stopped...\n"

exit

else

printf "Stoping MySQL...\n"

${CmdPath}/mysqladmin -u ${mysql_user}-p${mysql_pwd} -S /data/${port}/mysql.sock shutdown

fi

}

#restart function

function_restart_mysql()

{

printf "Restarting MySQL...\n"

function_stop_mysql

sleep 2

function_start_mysql

}

case $1 in

start)

function_start_mysql

;;

stop)

function_stop_mysql

;;

restart)

function_restart_mysql

;;

*)

printf "Usage: /data/${port}/mysql{start|stop|restart}\n"

esac


######################################################################################


-----------通过以上配置启动mysql数据库后生成的文件如下:

mysql-bin.000001 #<== mysql数据库的操作日志(加密)

mysql-bin.index #<== mysql数据库操作日志的索引文件

mysqld.pid #<== 3307数据库的进程号文件

mysql_3307.err #<== 3307的错误日志·文件

mysql.sock #<== 启动服务的套接字文件


注意:当数据强制关机会导致状态显示启动,实际并没有运行的状态,遇见此种状态将mysql.sock文件改革名字,然后重新启动数据库即可,它会生成新的mysql.sock文件


附件:http://down.51cto.com/data/2368098
0