mysql5运行多实例、mysql多实例和集群
本文内容列表:
- 1. 如何在一台数据库服务器上启动多个MySQL实例
- 2、ubuntu14.04下配置mysql5.5的多个实例
- 3、如何在一台机器上安装多个mysql数据库并启动多个mysql服务。在线等待,
如何在一台数据库服务器上启动多个MySQL实例
1. 将rpm包上传到服务器 2. 安装mysql服务器 rpm -ivhMySQL-server-5.5.8-1.rhel5.x86_64.rpm 3. 安装mysql客户端 rpm -ivhMySQL-client-5.5.5 。 - 1.rhel5.x86_64.rpm 4、创建目录 在/data下创建目录,将原来的数据目录/var/lib/mysql移动到/data/mysql/data1和/data/mysql/data2,并更改mysql目录及子目录权限 PS:安装后默认一些重要目录内容 /var/lib/mysql 数据文件、日志文件等/rc.d/init.d/mysql 启动脚本文件创建目录 更改权限 5.编辑并上传配置文件my.cnf 从/usr/share/mysql目录到服务器,设置my-innodb-heavy-4G。 cnf复制到本地。更改其内容以添加数据文件和日志文件的目录,并更改套接字目录。 6. 使用 mysql_multi 启动多个服务: mysqld_multi --defaults-file=/etc/my.cnf start1,2 检查是否启动: mysqld_multi --defaults-file=/etc/my.cnfreport 1 7. 检查是否启动端口开放 8.连接指定mysql服务器 mysql -u root -S/tmp/mysql1.sock 或 mysql -uroot -P3307 -h127.0.0.1 9.记得关闭防火墙

配置mysql5以上.5 ubuntu14.04下示例
本机配置有主机和从机。 # 1.关闭mysql
$mysqladmin -uroot -pmysql
$netstat -lnt|grep 3306
# 2.复制数据文件
$cp -R /data/mysqldata/data/mysqldata/ 3307
更改主/data/mysqldata/3306/my.cnf
server_id = 2433306
log-bin = /data/mysqldata/3306/binlog/mysql-binl mysql_db_startup.sh
# 3.创建用户对于复制到主数据库
mysql 授予复制从属到 *.* 到由 'replsafe' 标识的 'repl'@'192.168.2.%';
mysql 显示主状态;
+----- ------------------- +----------------+---------- - ---------+
|文件|位置| Binlog_Do_DB | Binlog_Ignore_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+----------------------------++---------------- ----+--------------------+
| mysql-bin。 000005 | 330 | 330 | | |
+------------------------+ ------------------+ --------------------+
1 行一组(0.03 秒)
# 4.在slave
server_id = 2433307
log-bin = /data/mysqldata/3306/binlog/mysql-bin
6上编辑/data/mysqldata/3307/my.cnf更改为我的33307。 cnf
$sed -i 's/3306/3307/g' /data/mysqldata/3307/my.cnf
auto.cnf 保存 mysql 服务器-uuid
$rm /data/3307data /data/ auto.cnf
# 5.启动slave
[mysql@mysql Scripten]$ mysql_db_startup.sh 3307
连接到slave mysql
$/mysql/local -/mysql/local usystem -p'root ' -S /data/mysqldata/3307/mysql.sock
mysql 将 master 更改为
- master_host='192.168.2.100',
- master_port=3306,_us ='repl',
- master_password='replsafe',
- master_log_file='mysql-bin.000005',
- master_log_pos=330;
***='8 将 master 更改为 master_2_host .2.100', master_port=3306 , master_user='repl', master_password='replsafe', master_log_file='mysql-bin.000005', master_log_pos=330;
查询正常,0行受影响,2个警告(0.08秒)
mysql启动从属;
查询正常,0行受影响(0.04秒)
# 6.测试复制
在主数据库
mysql-prompt master
PROMPT 设置为“master”
master use ylo;
master create table ct1(id int);s insert ct1 值(1).------+-----+---------+------+
|领域 |类型 |零|关键|默认 |额外 |
+------------------------------------ ---- +
|编号 |整数(11)|是 | |空 | |
+----------------------------------------+
1集合中的行(0.06 秒)
从机选择 * 来自 ct1;
+------ +
| id |
+------+
| 1 |
+------+
1 行集合(0.02 秒)
看来我们成功了。
检查复制状态
Slave显示从属状态\G
****************************** 第一排 ************** ** ************
Slave_IO_State:等待Master发送事件
Master_Host:192.168.2.100
Master_User:repl
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000005
Read_Master_Log_Pos: 911
relais: mysq_Fi.-0 Relais_ Log_Pos: 864
重新lais_Master_Log_File: mysql - bin.000005
Slave_IO_Running:是
Slave_SQL_Running:是
Replicate_Do_DB:
Replicate_Ignore_DB:
Treplize_Table:
Replicate_Wild_Do_Table:
Replicate_Wild _Ignore_Table:
Last_Errno:0
Last_Error:
Skip_cunter:0
Expor_master_log_poC:911-Relay_Lay_Space:1037
bis_37
bis_CLACTLE:0
bis_SCLACE:Master_SSL_CA_Fichier:
Master_SSL_CA _路径:
Master_SSL_Cert:
Master_SSL_Cipher:
Master_SSL_Key:
Seconds_Behind_Master:0
Master_SSL_Verify_Server_Cert:否_No♹Last_IO:_Ero 错误:
Last_SQL_Errno:
Last_SQL_Error:
Replicate_Ignore_Server_Ids:
Master_Server_Id:2433306
Master_UUID:ed611fac-75a8-11e6-9219-000c29d651e0
Master_Info_30.0 SQL _Delay:0
SQL_Remaining_Delay:NULL
Slave_SQL _Running_State:从机已读取所有中继日志;等待从 I/O 线程更新 _SSL_Crlpath:
Retrieved_Gtid_Set:
Executed_Gtid_Set:
Auto_Position: 0
1 row in set (0.00 sec)
如何在一台机器上安装多个 mysql 数据库以及如何启动多个 mysql 服务。在线等待,
该架构常用于以下三种场景
1。将多台服务器的数据备份到一台服务器。按照数据分割的方向,是垂直分割。例如,在图 2 中,商店 A、B、C 和 D 之前是拆分商店。现在需要对这些拆分存储进行聚合和备份。这个需求也非常适合多源复制架构。我大致描述一下实现方法:商店A、B、C、D分别在4台服务器上。每台服务器都有一个数据库,隔离前端业务数据。这样,四家公司的数据就可以全部存储在从库中了。无需执行额外操作即可进行汇总。在多源复制之前,为了满足这种需求,我们只能在汇总机上构建多个MySQL实例,这不可避免地涉及到跨数据库关联问题。不仅性能会显着下降,而且也没有单一服务器来管理多个实例。来吧。
2。用于聚合来自多个前端服务器的分片数据。
同样,按照数据分割的方向,是水平分割。例如图3中,如果数据按照年份划分,要做一个汇总数据展示,这种结构也是非常合适的。实现方法稍微复杂一些:比如所有服务器共享相同的数据库和表。一般为了实现开发的极度透明,前端都会配置库表分离的中间件,比如艾克森的DBLE。
3。汇总并合并来自不同服务器的数据
第三种情况与第一种情况类似。不同的是,不仅需要将数据聚合到目标端,还需要对数据进行合并,相对第一种方法来说要复杂一些。例如,如图4所示,这个需求是否也适合多源复制?答案是肯定的。那么具体该怎么做呢?
版权声明
本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。
code前端网
