Patent ID: 8326800

Claim:
At a distributed database system including at least one processor and a memory, in a computer networking environment including a plurality of computing systems, a computer-implemented method for providing distributed database service upgrades using multiple database server instances, the method comprising: an act of instantiating a plurality of first and second database server instances on each of a plurality of computer systems in a database cluster, including a primary node and at least a first secondary node, wherein the first database server instances are each running a current distributed database service version and the second database server instances are simultaneously each running a new distributed database service version; an act of receiving an indication that the distributed database service is to be upgraded; based on the received indication, an act of migrating database replicas from the first database server instances to the second database server instances, substantially without user-visible downtime and by performing at least moving first and second secondary replicas to the second server instances of the first and second secondary nodes which are configured to operate using the new distributed database service version; failing over a role of a primary replica to at least one secondary replica; and upgrading the primary replica to the new distributed database service version by moving from the first server instance to the second server instance running the new distributed database service version.