MariaDB单机多实例

我们在同一台服务器上运行3个mysql服务分别开启3306,3307,3308端口
##############################################
###            安装mariadb                        ##
##############################################

##############################################
###            初始化环境                        ##
##############################################
1) 创建3个目录分别保存3个实例对应的数据
[[email protected] ~]# mkdir -p /mariadb/data{3306,3307,3308}

2) 更改所属组和所有者
[[email protected] ~]# chown -R mysql:mysql /mariadb

###############################################
###   为数据实例目录初始化                    ###
###############################################
[[email protected] ~]# mysql_install_db  --datadir=/mariadb/data3306 --user=mysql
[[email protected] ~]# mysql_install_db  --datadir=/mariadb/data3307 --user=mysql
[[email protected] ~]# mysql_install_db  --datadir=/mariadb/data3308 --user=mysql

##############################################
###            创建实例                        ##
##############################################
1)编辑源配置文件
[[email protected] ~]# cp -a /etc/my.cnf /etc/my.cnf.bak
[[email protected] ~]# vi /etc/my.cnf # 添加如下代码,里面没有列出来的值都是保持默认的值
[mysqld_multi]
mysqld     = /usr/bin/mysqld_safe
user       = mysql

# 添加三个实例
[mysqld3306]
# 占用的端口(每一个实例占用一个端口)
port=3306
# 指定套接字文件所在的目录
socket=/tmp/mysql3306.sock
# 指定锁文件所在的位置
pid-file=/tmp/mysql3306.pid
# 指定数据库实例目录
datadir=/mariadb/data3306

[mysqld3307]
port=3307
socket=/tmp/mysql3307.sock
pid-file=/tmp/mysql3307.pid
datadir=/mariadb/data3307

[mysqld3308]
port=3308
socket=/tmp/mysql3308.sock
pid-file=/tmp/mysql3308.pid
datadir=/mariadb/data3308

##############################################
###                启动实例                    ##
##############################################
[[email protected] ~]# mysqld_multi --defaults-extra-file=/etc/my.cnf start 3306
[[email protected] ~]# mysqld_multi --defaults-extra-file=/etc/my.cnf  report  # 查看启动的实例
Reporting MySQL servers
MySQL server from group: mysqld3306 is running
MySQL server from group: mysqld3307 is not running
MySQL server from group: mysqld3308 is not running
启动其他的实例
[[email protected] ~]# mysqld_multi --defaults-extra-file=/etc/my.cnf start 3307
[[email protected] ~]# mysqld_multi --defaults-extra-file=/etc/my.cnf start 3308

###############################################
###           客户端登录                        ###
###############################################
1 通过TCP/ip连接
[[email protected] ~]# mysql -P3306 -hlocalhost --protocol=tcp # 当服务启动参数中有--skip-networking,则无法使用tcp协议连接

2 通过连接实例的方式
[[email protected] ~]# mysql -S /tmp/mysql3307.sock # 不能远程连接

################################################
###            对此实例进行操作                ####
################################################
MariaDB [(none)]> create database database_3306;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> create database database_3307;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> create database database_3308;
Query OK, 1 row affected (0.00 sec)

[[email protected] ~]# ll /mariadb/data3306
total 110632
。。。。。。。。
drwx------ 2 mysql mysql     4096 May 12 01:16 database_3306
。。。。。。。。

[[email protected] ~]# ll /mariadb/data3307
total 110632
。。。。。。
drwx------ 2 mysql mysql     4096 May 12 01:16 database_3307
。。。。。。

[[email protected] ~]# ll /mariadb/data3308
total 110632
。。。。。。
drwx------ 2 mysql mysql     4096 May 12 01:16 database_3308
。。。。。。
################################################
###             关闭实例                     ###
################################################
[[email protected] ~]# /usr/bin/mysqladmin -u root -p -S /tmp/mysql3306.sock shutdown
Enter password:

时间: 2024-10-27 11:04:23

MariaDB单机多实例的相关文章

mariadb单机多实例主从复制

准备工作: 停掉数据库服务: systemctl stop mariadb.service 将主库的数据库文件拷贝一份作为从库数据: cp -a -r /data/mysql_data/mysql/* /data/mysql_data/mysql2/ 拷贝完启动: systemctl start mariadb.service 步骤1:配置主库和从库多实例的cnf文件 主库和从库共用一个cnf文件, /etc/my.cnf [mysqld] log-bin=mysql-bin-log serve

MariaDB单机双实例主从复制

MariaDB其实和mysql一样,非有啥不一样那就是名字不一样~.~! 开始-上篇实验是MariaDB的单机多实例安装 双实例端口3307主库,3308从库 3307主实例的mysqld配置 [mysqld2] port=3307 socket=/tmp/mysql3307.sock pid-file=/tmp/mysql3307.pid max_allowed_packet=1M net_buffer_length=2k table_open_cache=4 sort_buffer_size

Redis的make,make test,make install、单机多实例配置,以及API程序写数据!

最近学习王家林老师的大数据蘑菇云行动,要实现将Spark Streaming分析的数据写入到Redis.今天正好开始入手.  一.Ubuntu16安装Redis3.2.1 遇到了不少的问题,其中,make倒是没问题,make test的时候,出现了: !!! WARNING The following tests failed: *** [err]: Slave should be able to synchronize with the master in tests/integration/

MySQL单机多实例安装并配置主从复制

单机多实例据说可以最大程度提高硬件使用,谁知道呢,但是以前的公司喜欢这样搞,我最近也在学习复制什么的,电脑搞不起两台虚拟机,刚好单机多实例可以解救我.下面就说说步骤. 承上文http://www.cnblogs.com/wingsless/p/4002806.html,我已经安装好了MySQL,不过这个是单实例的,要更改也可以,但是担心会出现问题,于是我将下面的东西删掉: 1 #rm -f /etc/init.dmysql 2 $rm -f /home/mysql/data 建立这么几个目录:

MySQL 5.6对已有Mysql单实例的机器,再添加mysql数据库,实现单机多实例

一.需求: 对已有Mysql单实例的机器,再添加两个mysql数据库,实现单机多实例. 一个绑定在端口3306,另外两个绑定在端口3307,3308: 数据分别存放在/data/mysqldata./data/mysqldata2./data/mysqldata3 三个实例均采用InnoDB作为默认的存储引擎,字符编码采用UTF-8: 三个实例均采用相同的性能优化配置参数: MySQL的源码安装请看我的另一篇博客http://yylinux.blog.51cto.com/8831641/1677

单机多实例MYSQL主从复制

今天有时间写写,不然心坎里总有点不爽.单机多实例一直都是屌丝的处事风格... 实验环境 RHEL6.5 172.24.0.130  3306 172.24.0.130  3307 01.本次采用的MYSQL二进制快速安装 下载地址: https://dev.mysql.com/downloads/mysql/ http://pan.baidu.com/s/1qYI0ybq http://pan.baidu.com/s/1pLHM2TH 密码: pg5t #截图操作 #根据需求选择对应的版本 02

amoeba针对MySQL单机多实例配置文件注释

MySQL单机多实例的读写分离可以通过第三方软件来实现,其中一个叫简单的读写分离软件就是今天所带给大家的amoeba软件. 本次使用的amoeba软件为amoeba-mysql-binary-2.1.0-RC5.tar.gz 本软件是基于JAVA环境运行的,所以需要JAVA环境支持,具体环境配置不做详解. 本文主要解释两个主配置文件. 1.dbServer.xml 这个文件配置的是父配置(用来给默认子配置补充配置项) 真实mysql服务器的端口,数据库名称,mysql用户及密码 主服务器,从服务

Tomcat单机多实例部署-多项目部署

博文说明[前言]: 本文将通过个人口吻介绍Tomcat单机多实例部署,在目前时间点[2017年8月13号]下,所掌握的技术水平有限,可能会存在不少知识理解不够深入或全面,望大家指出问题共同交流,在后续工作及学习中如发现本文内容与实际情况有所偏差,将会完善该博文内容. 本文参考文献及引用文章链接: 1.http://wiki.jikexueyuan.com/project/tomcat/ [Tomcat 8 权威指南-极客学院出品] 2.<Tomcat 权威指南> 2.http://www.cn

[转载]Tomcat单机多实例配置

Tomcat单机多实例配置 当一个进程的线程超过500个的话,那么这个进程的运行效率会变得很低.因为一个进程产生过多的线程,CPU资源会浪费在线程间切换过程当中.但当服务器配置很高的情况下,如:32G内存,16核的CPU.这样一台高配的机器上只装一个Tomcat实例,会有点浪费.其实我们可以根据服务器的硬件配置,配置多个Tomcat实例,充分利用硬件的资源.你第一时间可能会想到,直接下载多份Tomcat安装包,直接解压,改下端口跑起来不就可以了? 这样也是可以的,但不好维护.假设你在一台机器上安