I'd like to ask if there exist any sharding mechanism (like SQL Azure Federations in Cloud) but in SQL Server 2012 .
I've searched a lot but I couldn't find any appropriate solution that resembles Federations. There is AlwaysOn but it's not the same.
Thanks
No, this feature is not in the boxed product in SQL Server 2012. There are many ways to scale reads but merge replication and distributed partitioned views seem to still be the only viable out-of-the-box solutions for scaling writes. Note that the latter doesn't seem to be officially documented separately in SQL Server 2012 - it has all been condensed into the CREATE VIEW topic.
Related
What is the main difference between SQL SERVER and SQL AZURE, What is the advantage of SQL Azure
On this article you will find how they compare on topics like features, upgrades, limitations, TCO, business continuity, licensing, performance, security, data transfer and costs. SQL Azure has now more security features than the article show like row-level security, dynamic data masking, auditing, encryption, threat detection, and SQL Vulnerability Assessment as you can read here.
About the Transact-SQL differences of Azure SQL Database compared with SQL Server you will find them here. Some of the most important differences are you cannot rely db_id(), you cannot use DBCC DROPCLEANBUFFERS, linked servers are not available, cross database queries are allowed via elastic queries, some system stored procedures not supported, USE is not supported, four-part names not supported.
I am looking at ways I can mitigate outages during Azure maintainance using SQL stacks in availability groups.
Coming up with an HA architecture for SQL 2012 on Azure threw up the following observations;
I originally considered 3 options for HADR as DB Mirroring, AlwaysOn FCI & AlwaysOn Availability Groups until it became apparent that FCI is reliant on shared storage - doable but certainly a single point of failure as this storage cannot be spread across Azure availability groups.
AlwaysOn Availbility Groups is possible but only through Enterprise licensing which puts a factor of x5 on the monthly run rate.
So unless I've missed something, unless you're prepared to spend the bucks on Enterprise SQL, you are constrained to DB mirroring - have I got this correct ?
Thanks,
SJM
There are two ways to accomplish High availability for SQL in Azure.
As it sounds like you are rolling IaaS, I would suggest reading this article: http://blogs.msdn.com/b/mvpawardprogram/archive/2014/08/18/sql-server-high-availability-in-windows-azure-iaas.aspx
If you choose, I find PaaS solutions easier to manage, I would run with SQL Azure and use the geo-replication features. More details can be found at the following link: http://azure.microsoft.com/blog/2014/09/03/azure-sql-database-standard-geo-replication/
I have a database Now what I want If in any case my database server
has failed then it automatically gets data from another server. I want
to know how can we do Data Replication/Mirroring.
Can anybody share an idea how we can do this?
I have searched a lot in the Google but doesn't get exact link for the
Data Replication on SQL Server 2012. I really appreciate your
suggestions.
For failover type scenarios, you want to use either Mirroring or Always on, not replication.
Details on Mirroring are available here:
Database Mirroring
Details on Always On are available here:
SQL 2012 Always On
Both of these solutions are able to provide automatic failover for applications to a separate copy of the database if the primary server fails, AlwaysOn is the better solution (and mirroring is now apparently deprecated as of SQL 2012) but has some more complex requirements such as a dependency on windows clustering.
Documentation for SQL Server Replication can be found in Books Online for SQL Server 2012 - SQL Server Replication.
I want to setup replication between SQL Server and MySQL, in which SQL Server is the primary database server and MySQL is the slave server (on linux).
Is there a way to setup such scenario? Help me .
My answer might be coming too late, but still for future reference ...
You can use one of the heterogeneous replication solutions like SymmetricDS: http://www.symmetricds.org/. It can replicate data between any SQL database to any SQL database, altough the overhead is higher than using a native replication solution.
of course you can replicate MSSQL database to MYSQL
By using Linked Server in MSSQL.
for that you need to download ODBC drivers. and you can further search regarding how to create Linked server on SQL SERVER.
This option is very easy and Totally free. You can use OPEN QUERY FOR THIS.
By using SSIS Packages.
for that you need the Business Intelligence service of SQL SERVER. you can create SSIS Packages on Visual Studio and run them for replication.
No. At least not without doing a lot of dirty, bad things. MSSQL and MySQL speak different replication protocols, so you won't be able to set it up natively (which is the way you'd want to handle it). At best, you could hack together some sort of proxy that forwards insert/update/delete/create/alter, etc. queries from one to the other. This is a terrible idea as they don't speak the same SQL except in the most common case. Even database dumps which wouldn't really be replication are generally incompatible between vendors.
Don't do it. If you must use different OSes on your servers, standardize the database to something that runs on both.
These two databases are from two different vendors. While I cannot say for sure, it is unlikely Microsoft has any interest in allowing replication to a different vendor's database server.
I work with Informix and MySQL. Both those databases have commands that dump the entire database to an ascii file format. You would need to see how that is done on MS SQL Server; ftp the dump to the server hosting the MySQL server; and then convert the dump into something MySQL can import.
Wikipedia says SQL Server Express Edition is limited to "one processor, 1 GB memory and 4 GB database files". Does anyone have practical experience with how well this scales?
It's a regular sql server, it just has a limit. SharePoint by default uses the sql server express if that gives you any idea. We have our entire office (80+) people running on that instance.
We have used SQL Server Express Edition in some of our smaller applications, maybe 5+ users, and smaller databases. The 4GB is very limiting in a high transaction environments, and in some cases we have had to migrate our customer to SQL Server Standard Edition.
It really comes down to the nature of your database and application. What kind of application(s) are hitting SQL Server? In my experience, it only handles 5-10 users with a heavy read/write application.
This question is far too vague to be useful to you or anyone else. Also, Wikipedia is your primary source of info on SQL Server, fail?
The first matrix of the MSDN page for Features Supported by the Editions of SQL Server 2008 is titled "Scalability." The only edition with any features marked "Yes" is Enterprise (you get Partitioning, Data compression, Resource governor, and Partition table parallelism.) And it goes down the line from there, Express does not support many of the features designed for "scale." If your main demand is space, how soon will you exceed 4GB? If your main demand is high availability and integrity, don't even bother with Express.
"Scalable" is quickly becoming a weasel-/buzz-word, alongside "robust." People use it when they haven't thought hard enough about what they mean.