标签: replication

甲骨文数据卫士

Oracle DataGuard 是一种跨多个 Oracle 引擎实例复制 Oracle RDBMS 中存储的数据的技术。我想知道 DataGuard 是否真的为 RDBMS 提供了线性可扩展性。您有使用 DataGuard 的经验吗?它在重负载条件下表现如何?

oracle replication rdbms database-design scalability

1
推荐指数
1
解决办法
448
查看次数

复制和对性能的影响

据我所知,MongoDB 中的复制是一种在mongods上的不同服务器中保留相同数据集的方法。我阅读了 MongoDB 文档,但没有找到与性能变化相关的任何内容。

我一直有一个问题,复制是否可以帮助 MongoDB 提高写/读操作性能?

replication mongodb database-replication

1
推荐指数
1
解决办法
2196
查看次数

跨区域的 AWS RDS 多可用区?

是否可以拥有跨越两个区域的 RDS MySQL Multi-AZ 数据库实例?

mysql replication failover rds amazon-web-services

1
推荐指数
1
解决办法
3309
查看次数

即使创建了卷,Gluster 也不同步

我已经在 LAN 上的两个 ubuntu 机器上安装了 Gluster。一切看起来都很好,但是当我将文件写入服务器 1 上的文件夹时,它不会出现在服务器 2 上的文件夹中。这是我所知道的仅有的两个测试,用于测试卷是否正常工作。我已经测试了对等点连接并且它们确实连接了。

root@ubuntu:/var/www# netstat -tap | grep glusterfsd
tcp        0      0 *:49152                 *:*                     LISTEN      11637/glusterfsd
tcp        0      0 192.168.10.2:49152      192.168.10.2:1023       ESTABLISHED 11637/glusterfsd
tcp        0      0 192.168.10.2:1022       192.168.10.2:24007      ESTABLISHED 11637/glusterfsd
tcp        0      0 192.168.10.2:49152      192.168.10.3:1014       ESTABLISHED 11637/glusterfsd
tcp        0      0 192.168.10.2:49152      192.168.10.3:1020       ESTABLISHED 11637/glusterfsd
tcp        0      0 192.168.10.2:49152      192.168.10.2:1020       ESTABLISHED 11637/glusterfsd

root@ubuntu:/var/www# gluster volume info

Volume Name: kdevvol
Type: Replicate
Volume ID: 9170886e-2d95-43fb-9425-514f142cb38a
Status: Started
Number of Bricks: 1 x 2 = 2 …
Run Code Online (Sandbox Code Playgroud)

ubuntu replication glusterfs

1
推荐指数
1
解决办法
3778
查看次数

mongo 复制设置存储在哪里?

mongo 完全重装后,还记得之前的副本集配置;它把这个存储在哪里?

我使用我们项目的用户帐户在 linux 服务器上安装了 mongo 到该用户拥有的目录中。我设置了复制并让它工作正常。然后,为了测试一些更精细的安装点,我删除了整个 mongo 目录并重新安装。进入mongo,发现replication已经和之前一样设置好了;所以看起来 mongo 将信息存储在某个地方。

我检查了几个可能持有副本集配置的区域:

  1. 首先,在 mongo 目录中,但已删除。
  2. 在一些传统的 linux 结构中可能由 root 拥有,但项目用户没有 root 访问权限和 mongo,由相同的运行,也不应该。
  3. 项目用户的主目录。现在这确实有一个包含命令行历史的 .dbshel​​l 文件,但仅此而已。我没有看到任何其他相关的文件。
  4. mongo 配置中指定的某个位置。但是我在那里只提到了两个路径,一个用于系统日志 ( systemLog.path),另一个用于存储 ( storage.dbPath),并且都指向已删除的 mongo 目录。

有谁知道 mongo 在哪里存储此配置信息?

replication mongodb mongodb-replica-set

1
推荐指数
1
解决办法
3106
查看次数

memcache 是否使用副本?

我知道 memcache 使用一致性散列来进行着色。
但是,memcache 是否将复制作为磁盘存储?

我认为它不会。因为,丢失其中一台缓存服务器仅意味着该分片的缓存未命中。这不是单点故障。

不过,我还是想确认一下。

replication memcached distributed-system

1
推荐指数
1
解决办法
2331
查看次数

由于操作系统错误3,该进程无法读取文件'C:\ Windows\Temp\unc\snapshotname

我正在尝试进行快照复制.我的发布者和我的下标都在不同的计算机上.

当我打开复制监视器时,我看到订阅生成的此错误,同时成功创建了快照代理.

我读到了这个错误,我知道操作系统错误号3意味着订阅无法找到该文件夹​​.要解决它,路径应写如下:\ computername\sharefolder

当我将它插入快照路径时,它返回另一个错误.订阅没问题,但代理返回我无法读取文件\ computername .....访问被拒绝.

所以我很困惑,我不知道怎么回事!

sql replication snapshot

0
推荐指数
1
解决办法
3906
查看次数

使用删除的成员形成一个新的副本集

如何配置已删除的副本集成员以形成新的副本集?

我有一个包含 4 个 mongod 实例的副本集

rs.config() 的输出

{
    "_id" : "rs0",
    "members" : [
        {
            "_id" : 0,
            "host" : "localhost:27031"
        },
        {
            "_id" : 1,
            "host" : "localhost:27032"
        },
        {
            "_id" : 2,
            "host" : "localhost:27033"
        },
        {
            "_id" : 3,
            "host" : "localhost:27034"
        }
    ],
    "settings" : {
       "replicaSetId" : ObjectId("5cf22332f5b9d21b01b9b6b2") 
    }
}
Run Code Online (Sandbox Code Playgroud)

我从副本集中删除了 2 个实例

rs.remove("localhost:27033")
rs.remove("localhost:27034")
Run Code Online (Sandbox Code Playgroud)

现在我的要求是用这 2 个删除的成员形成一个新的副本集。最好的方法是什么?

我目前的解决方案

连接到已删除的成员

mongo --port 27033
Run Code Online (Sandbox Code Playgroud)

并执行

conf = {
        "_id" : "rs0",
        "members" : [ …
Run Code Online (Sandbox Code Playgroud)

replication data-migration mongodb mongodb-replica-set

0
推荐指数
1
解决办法
3590
查看次数

为什么 Laravel 5.8 无法在专用网络上使用数据库会话驱动程序登录?

设置:

  • 专用网络中负载均衡器后面的多个 Laravel 副本
  • 副本联系在同一专用网络上拥有数据库的单个主服务器
  • 副本配置为使用数据库会话驱动程序
  • Master 有适当的会话表,使用以下命令创建:php artisan session:table
  • Cloudflare 在负载均衡器前面使用 https,所有其他(包括负载均衡器本身)都是 http

当我尝试登录时,我可以看到在会话表中创建条目(尽管 IP 列是来自专用网络的 10.0.0.0/24 负载均衡器),XXX_session浏览器中也会创建一个 cookie,但用户永远不会已登录并返回登录状态。

如果我使用 cookie 驱动程序,则不会发生这种情况。

这个问题和答案听起来很有希望,因为它提到了编辑会话配置,但遗憾的是 laravel 5.8 直接从.env并且永远不会回退到提供的第二个默认选项,让我按照 laravel 数据库会话文档已经做过的事情。

问题:出了什么问题,是因为laravel将私有IP而不是真实用户IP写入数据库吗?如果是这种情况,我该如何强制它写入我从 cloudflare 获得的真实用户 IP?


编辑:

2019 年 10 月 7 日:即使我绕过负载均衡器,将数据库中的 IP 更改为外部 IP 也不会让我登录。

php database replication laravel laravel-5.8

0
推荐指数
1
解决办法
588
查看次数

如何在 R 中复制向量

我需要以数字改变的方式复制向量,因为目前我只复制相同的数字。

例子:

> rep(c(sample(c(1:100),5, replace = T),sample(NA ,5, replace = T)), 2)
 [1] 33 91 48 18 29 NA NA NA NA NA 33 91 48 18 29 NA NA NA NA NA

I would like 
[1] 33 91 48 18 29 NA NA NA NA NA 23 45 27 67 55 NA NA NA NA NA
Run Code Online (Sandbox Code Playgroud)

replication r sample

0
推荐指数
1
解决办法
66
查看次数

-2
推荐指数
1
解决办法
151
查看次数

在忽略的表上使用UPDATE JOIN进行Mysql复制

我正在做mysql复制,作为一个愚蠢的例子,我有两个表,tableAtableB.

在slave上进行复制,tableA允许并被tableB忽略.

replicate-do-table='dbname.tableA'
Run Code Online (Sandbox Code Playgroud)

在主服务器上,正在进行此查询(我无法对主服务器进行任何更改):

UPDATE tableA as a LEFT JOIN tableB as b ON b.type = a.type
SET b.col1 = CONCAT(IFNULL(a.col1,''),'|',IFNULL(a.col2,''))
Run Code Online (Sandbox Code Playgroud)

显然我可以tableB在slave上创建并让它更新一个伪表,但是这个表特别是一个用于搜索的内存表,并且几乎不断更新导致大量浪费的资源.

有没有办法让我从复制过滤掉这些更新,同时仍然保持tableA?我无法访问主服务器,但是如果这是一个不会影响系统运行方式的更改,我可以要求他们进行更改.

mysql replication

-33
推荐指数
1
解决办法
692
查看次数