oracle rac问题
发布网友
发布时间:2022-09-03 00:21
我来回答
共2个回答
热心网友
时间:2024-12-05 02:55
rac不是分布式数据库,rac结构无论多少个实例都是一个数据库,事务间不需要协调,而所谓的分布式数据库是多个数据库协同工作,事务间需要协调机制。
1、数据库中建立的表是在机器1还是在机器2呢?
答:机器1和机器上2看到的数据库实际上是同一个数据库,所以表既可以在机器1上看到也可以在机器2上看到。
2、如果有个表,在做机器1停机维护时(此时机器2仍可供访问),对这个机器上的表做索引重建,那么是否会影响机器2的使用?
答:如果机器1上的实例对表重建索引,其效果等于机器2上的实例对表重建索引,所以会影响机器2对该表的使用。例如你在机器1上重建索引时没有加上online关键字,重建过程中机器2不能对该表进行dml。
补充:
机器1和机器2看到的库实际上是同一个库,所以在机器1上给某表重建索引时对该表加的锁,也会影响机器2对该表的使用。就像我前面说的,假如你在机器1上重建索引时没有加上online关键字,重建过程中机器2不能对该表进行dml。再进一步说明,你在机器1上重建索引的过程中,机器2也不能将这个表drop掉,原因就是机器1在这个表上加上了ddl锁。
热心网友
时间:2024-12-05 02:56
rac可以简单这样理解:
1。数据库中建立的表是在机器1还是在机器2呢?
2个机器装了2个数据库软件去访问一个数据库,这个数据库是存储在2个服务器都能连接的公共存储上
2、如果有个表,在做机器1停机维护时(此时机器2仍可供访问),对这个机器上的表做索引重建,那么是否会影响机器2的使用?
不会影响的,因为他们同时访问的实际上是一个“库”