我有一个 MySQL 主实例在我们的本地网络上运行,但我想知道我是否可以得到一个 EC2 RDS 实例来复制主实例,或者这是否被亚马逊锁定?
问题的根源:在正在运行的主机上创建从机的所有说明中都需要flush tables with read lock. 我们使用MyISAM,所以我们不能只使用--single transaction 来获得一致的表数据。
奴隶因各种“正常”原因而失败——平均每周一次。所以我关闭了站点,使用读取锁定主数据库刷新表,mysqldump(单个事务,带有主记录),推送到从属,重置主(带有日志位置),并启动从属等。
为了在不停机的情况下做到这一点,我尝试了基本相同的步骤,然后使用START SLAVE UNTIL- 然后在运行 SELECT MASTER_POS_WAIT(); 时暂停实时数据库几秒钟;在奴隶上。我似乎无法让奴隶追上来。
为了让从数据库再次赶上主数据库,以下步骤中遗漏了什么(或不必要的)?一个简单的start slave工作?
#!/bin/bash
##
mysqldump --allow-keywords --add-drop-table --comments --extended-insert --master-data \
--debug-info --single-transaction -u $LOCALDB_USER_NAME -p$LOCALDB_PASS $LOCALDB_NAME > $DBFILENAME
## get master position from file for use later
echo
echo "############# MASTER STATUS #############"
cat $DBFILENAME | grep "CHANGE MASTER"
echo
echo "compressing"
gzip $DBFILENAME
echo "sending to $REMOTE_SERVER"
[...]
echo "uncompresing remote db"
sudo ssh $REMOTE_SERVER_USERNAME@$REMOTE_SERVER "cd …Run Code Online (Sandbox Code Playgroud) 我已经使用bind 在Linux 上设置了一个从属DNS 服务器。启动命名服务时,区域文件会传输到,slaves/但文件中的信息看起来像是奇怪的计算机符号(我不确定正确的术语是什么),其中有符号和方块,如下面的代码片段。
有谁知道这可能是什么原因造成的?我是否错过了重要的一步?
我有三台服务器,Server X、Y 和 Z。
我在 X 上有主要的 mysql 数据库(innodb DB)。
现在我已经创建了从 X 到 Y 的主从。这里一切正常。
现在我将 Y 设置为 Z 的主站。
当我在 Z(第三台服务器)上显示从站状态时
显示从属状态\G Slave_IO_State:等待主机发送事件 ... Slave_IO_Running: 是 Slave_SQL_Running: 是 ... Seconds_Behind_Master: 0
但是数据没有同步,Y 和 Z 之间没有任何移动。知道是什么原因造成的吗?
在服务器 Y 上的 my.cnf 中
编辑
,我有以下配置:
日志从站更新=ON 日志-bin=mysql-bin
但在像“%slave%”这样的显示变量中,我有
显示像“%slave%”这样的变量; +---------------------------+--------+ | 变量名 | 价值 | +---------------------------+--------+ | init_slave | | | log_slave_updates | 关闭 | | slave_compressed_protocol | 关闭 | | slave_exec_mode | 严格 | | slave_load_tmpdir | /tmp | | slave_net_timeout …
在集成了 AD 的 DNS 系统中,确实没有一个“主”DNS 服务器的概念;所有 AD 集成区域在所有 DNS 服务器上都具有权威性和可更新性,并定期相互发送更新。
BIND 中是否有类似的方法/选项/功能?我读到的只是设置主/从,但我不想这样做。
最近我们移动了我们的主要外部 DNS 服务器。它前面有三个缓存 DNS 从属服务器,由我们的 ISP 提供。他们告诉我们,在进行区域传输 (AXFR) 时,他们已经开始收到拒绝访问的请求。如果我将自己的 IP 添加到允许传输列表中,则在将 dig 与 AXFR 参数一起使用时,传输也会失败。这是我的绑定配置的样子:
options {
directory "/var/lib/named";
dump-file "/var/log/named_dump.db";
zone-statistics yes;
statistics-file "/var/log/named.stats";
listen-on-v6 { any; };
notify-source 10.19.0.68 port 53;
querylog yes;
notify yes;
allow-transfer {
127.0.0.1; //localhost
1.1.1.1; //public dns slave 1
2.2.2.2; //public dns slave 2
3.3.3.3; //public dns slave 3
};
also-notify {
1.1.1.1; //public dns slave 1
2.2.2.2; //public dns slave 2
3.3.3.3; //public dns slave 3
};
include "/etc/named.d/forwarders.conf";
};
logging { …Run Code Online (Sandbox Code Playgroud) 我运行一个我无法完全控制的域的从属名称服务器(即不可能更改 SOA)。SOA 指定了一个星期的到期时间。出于各种原因,我想将特定从服务器上的该值覆盖为更大的值。有没有办法做到这一点?
注意:我知道对于刷新和重试字段,bind9 提供了选项 min-refresh-time、max-refresh-time、min-retry-time 和 max-retry-time 来否决 SOA,如文档中所述。出于某种原因,这不包括到期。
我也有一个主名称服务器设置和几个从站。今天,当我遇到一条奇怪的错误消息时,我正在将其中一个从属服务器更改为新服务器。
在主服务器上更新 DNS 记录并重新启动 BIND 后,我注意到它ns3.mydomain.com正在尝试发送ns4.mydomain.com通知。我检查的配置文件,并没有在那里它拥有的IP地址ns4.mydomain.com的ns3.mydomain.com配置文件。
它不应该ns1.mydomain.com将通知发送给ns4而不是ns3吗?我还要指出,双方的DNS记录ns3,并ns4似乎被更新。
这是 ns3 上的错误消息(IP 地址:)107.161.xxx.xxx:
May 15 22:08:22 vps named[23851]: client 185.38.xxx.xxx#59396: received notify for zone 'mydomain1.com'
May 15 22:08:22 vps named[23851]: zone mydomain1.com/IN: refused notify from non-master: 185.38.xxx.xxx#59396
May 15 22:08:22 vps named[23851]: client 185.38.xxx.xxx#59396: received notify for zone 'mydomain2.com'
May 15 22:08:22 vps named[23851]: zone mydomain2.com/IN: refused notify from non-master: 185.38.xxx.xxx#59396
May …Run Code Online (Sandbox Code Playgroud) 我一直在尝试在两台机器之间实现绑定主-> 从设置,但是我在主机上用于通知我的从机的 IP 地址 BIND 方面存在问题。
这是我的设置:
Master: master.site.com - 10.0.0.2
Slave: slave.site.com - 10.0.0.10
Run Code Online (Sandbox Code Playgroud)
Master 有一个权威区域site.com,它被配置为在区域更改时通知所有从站。该区域工作正常。它可以很好地回答查询和dig @10.0.0.2 -t SOA site.com
所以,在主人身上我有这个named.conf.options:
options {
directory "/var/cache/bind";
dnssec-validation auto;
auth-nxdomain no;
listen-on { 10.0.0.2; };
listen-on-v6 { any; };
allow-query { any; };
recursion yes;
allow-recursion { localhost; };
allow-notify { localhost; };
allow-transfer { localhost; 10.0.0.10; };
version none;
notify yes;
also-notify { 10.0.0.10; };
};
Run Code Online (Sandbox Code Playgroud)
在奴隶上:
options {
directory "/var/cache/bind";
dnssec-validation auto;
auth-nxdomain no; …Run Code Online (Sandbox Code Playgroud) master-slave ×9
bind ×6
dns-zone ×4
mysql ×3
amazon-ec2 ×1
linux ×1
nameserver ×1
replication ×1
reverse-dns ×1
soa-record ×1