How to configure SQL Server Native client 11.0 for Failovers, High Availability, Disaster Recovery - sql-server-2012

I have SQL Server 2012 Web Edition.
I want to configure High Availability on this Server.
Do I need to have another SQL Server to configure High availability?
How is SQL Server Native Client 11.0 is part of this?
I know this is a wide area question, but I am looking for a start on this.

Yes, for all high availability scenarios you need more than one server. As for high availability in the web edition, all you get is log shipping, so you will need to manually fail over to another server if your primary dies.
The native client is a combined ODBC driver and OLE DB Provider for SQL server. It doesn't in itself provide high availability, but it can be used, for example if you were using database mirroring, to provide the name of the mirror server for automatic failover.

Related

SQL Server Replication using RMO

We are using SQL Server replication using RMO. We have SQL 2016 (Standard Edition) on the server acting as the publisher and SQL Server Express Edition as the subscriber.
Previously, the distributor and the publisher were on the same server and the replication was working.
We have a client application, the data needs to be synced with the server on a regular basis.
We have Transactional and merger replication set and rely on pull approach where the client application pulls the data on demand.
For security reasons, the client doesn't want to expose port 1433 (or any other port) on the publisher to the subscribers.
So, we decided to move the distributor on a remote server, so that the subscriber talks to the publisher via remote distributor. (The remote distributor can connect and talk to the Publisher.) However, I am getting an error when I try to sync.
Wanted to check if replication is possible when port 1433 is blocked for the subscribers?
If yes, can you provide me some sample code or pointers to it. If no, what are the different options that I can have?

TDE in Azure on a virtual server

Our new system handle HIPPA data and has security equirements.
Azure handles secure connections, but we're looking at TDE as well.
One of our consultants said that TDE is possible by creating a virtual server in Azure and loading SQL Server 2012 Enterprise edition directly on to the server. This would be outside of the Azure provisioning. Would this work?
I know that a recent release that's currently in preview that would accomodate TDE. Does any one know were I can get the preview version?
Thank you for your help
From your description, I'm assuming you're referring to running SQL Server in an Azure VM. If that's correct, TDE has nothing to do with Azure provisioning.
You can pick any of the SQL Server VM templates available that supports TDE. After Azure completes provision of the VM, you can login to your SQL Server and enable TDE. You can certainly still upload your own VM image but unless you have some corporate standards, pre-installed software, etc... a regular provision is probably the easiest and fastest.

What is the difference between SQL Server Compact and SQL Server and SQL Server Standard.?

When a project is created in Asp.net MVC you have the possibility to choose between different types of database, which is the recommended and what are their differences and uses.
SQL Server runs as a service, whereas SQL Server Compact is an embedded database in the same physical location as the application. SQL Server Compact is meant for a standalone application and is not intended to be shared among many users or in situations where there is a lot of concurrent access, such as with a web site.
SQL Server runs as a service and listens for requests on a port. You can have multiple concurrent connections with its use and it acts as a gatekeeper checking for permissions from incoming connections. It is meant for work groups and enterprises, and is not intended (overkill) for single-user/single-computer applications.
SQL Server Express is the free edition of the full SQL Server, and has certain limitations such as a maximum database size of 10GB, among others. SQL Server Standard is like the full edition. There are also Enterprise, Datacenter, and Developer editions.

Can you update a remote web sql database securely?

We have sql 2000 databases on our internal network secured behind ISA Firewall. Up till now we have not opened tcp port 1433 to allow external sql traffic in or out. We also have a remote external website with a later version of sql on.
Is there any way to update the external database from our internal network without increasing the chance of anyone hacking into our internal network?
The Sync Framework does this for most cases. I'd recommend against opening up your firewall to allow anyone to connect to your database server - that's pretty much inviting hackers to own your data.
The Sync framework works natively with SQL Server 2000 SP4 and later - though you can probably find a provider for older versions if you try. By using a provider framework, Sync can in principle connect to any data source.

Online SQL Server database accessed from my software

I have been working on the software using a SQL Server database. Now I am in the phase when I would like to provide this software for other people, but I don't know how to manage the database. The thing is that it is really inconvenient when installing my software to also install SQL Server at the users computer (many unexpected thing could happen).
Therefore I thought that I would pay for web hosting with SQL Server, but it is:
Expensive (just for database with few tables).
Most of the web hosting don't offer remote access to the SQL Server database (so I can't connect there from my software).
So there is my question, what would you do? My own virtual server? (even more expensive), or would you install SQL Server on users computer? Or do you know where to get only SQL Server hosting for low costs?
I don't advice using a remote SQL Server. SQL Connections strongly depend on network connection and the Internet is not "stable" enough for that. There are also performance issues that will make your application completely useless.
One important thing you didn't mention is whether different users will share the same data or will have their own. If each user will use their own data you can install a "local" SQL Server Edition (SQL Compact Edition, here is the reference)
http://msdn.microsoft.com/en-us/library/aa983341(v=vs.110).aspx
In case several users will share the same data, you shouldn't rely on the database solely. One possible approach is having an Application server that implements business logic whereas your desktop application stays actiong as a "dumb" client. This is a lot better for performance and reduce data transfer problems. You can implement webservices for you application server. This is a good solution as the data is transfered from he application server to the clients through HTTP/HTTPS and this relieves you from dealing with ports and other communication issues. An alternative is using Microsoft Communication Framework (WCF)
Good luck!