欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Mysql利用mysql_multi配置一台主机多个实例_MySQL

程序员文章站 2022-06-12 12:38:19
...

Mysqld_multi可以管理多个帧听不同Unix套接字文件和TCP/IP端口的连接的mysqld 进程。它可以启动或停止服务器,或报告它们的当前状态。


即可以管理多个实例。

笔者在之前也介绍过使用mysqld_safe启用多实例的方法,启动和关闭都指定配置文件,实例间是对立的,互不影响。成功的部署了多个实例主从Replication,今天也介绍下mysql_multi多实例管理,配置简单,方便管理。

1、首先配置my.cnf文件,列出我的Mysql配置文件:

[mysqld_multi]mysqld = /usr/local/mysql/bin/mysqld_safe    #根据自己的mysql目录配置mysqladmin = /usr/local/mysql/bin/mysqladmin[mysqld1]port    = 3306socket    = /tmp/mysql3306.sockbasedir=/usr/local/mysqldatadir=/mysqldata/data3306log-slow-queries=slow_query.txtlong_query_time=2skip-lockingskip-name-resolveskip-innodbmax_allowed_packet = 256Mquery_cache_size=256Mmax_connections=2000max_connect_errors=10000key_buffer_size=6000Mread_buffer_size=32Mread_rnd_buffer_size = 32Mmyisam_sort_buffer_size=512Mtmp_table_size=1024Mold-passwordsinteractive_timeout=60wait_timeout=60connect_timeout=60table_cache=8192thread_cache_size=512sort_buffer_size=128Mback_log = 500thread_concurrency=48expire_logs_days=10log-bin=mysql-bin[mysqld2]port    = 3307socket    = /tmp/mysql3307.sockbasedir=/usr/local/mysqldatadir=/mysqldata/data3307log-slow-queries=slow_query.txtlong_query_time=2skip-lockingskip-name-resolveskip-innodbmax_allowed_packet = 256Mquery_cache_size=256Mmax_connections=2000max_connect_errors=10000key_buffer_size=6000Mread_buffer_size=32Mread_rnd_buffer_size = 32Mmyisam_sort_buffer_size=512Mtmp_table_size=1024Mold-passwordsinteractive_timeout=60wait_timeout=60connect_timeout=60table_cache=8192thread_cache_size=512sort_buffer_size=128Mback_log = 500thread_concurrency=48expire_logs_days=10log-bin=mysql-bin[mysqldump]quickmax_allowed_packet = 512M[mysql]no-auto-rehash[isamchk]key_buffer = 512Msort_buffer_size = 32Mread_buffer = 2Mwrite_buffer = 2M[myisamchk]key_buffer = 512Msort_buffer_size = 32Mread_buffer = 2Mwrite_buffer = 2M[mysqlhotcopy]interactive-timeout

2、初始化数据库目录:

shell>cd /usr/local/mysql/;./scripts/mysql_install_db   --datadir=/mysqldata/data3307/ --user=mysqlshell>cd /usr/local/mysql/;./scripts/mysql_install_db   --datadir=/mysqldata/data3306/ --user=mysql

初始话成功,会提示OK,否则查看数据库目录是否有权限。 不初始发数据库目录,mysql会启动不了!

3、启动多实例:

shell>/usr/local/mysql/bin/mysqld_multi start 1-2或shell>/usr/local/mysql/bin/mysqld_multi start 1shell>/usr/local/mysql/bin/mysqld_multi start 2

注意这里的1、2对应my.cnf配置文件 mysqld1、mysqld2,以此来区分。

Mysql利用mysql_multi配置一台主机多个实例_MySQL

4、本机登录Mysql,如3307端口:

shell>mysql -S  /tmp/mysql3307.sockmysql> show variables like 'datadir';+---------------+----------------------+| Variable_name | Value                |+---------------+----------------------+| datadir       | /mysqldata/data3307/ |+---------------+----------------------+1 row in set (0.00 sec)

4、关闭数据库实例

shell>/usr/local/mysql/bin/mysqld_multi stop 1-2或shell>/usr/local/mysql/bin/mysqld_multi stop 1shell>/usr/local/mysql/bin/mysqld_multi stop 2