Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
Questions asking us to recommend or find a tool, library or favorite off-site resource are off-topic for Stack Overflow as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it.
Closed 9 years ago.
Improve this question
I started to work on an ASP.NET MVC5 application but I still not decided where I will host everything and what type of database I will use. The first option I thought was shared or vps hosting (like Godaddy) that includes traditionnal MSSQL and MySQL. The second option is Azure Websites which seems more scalable and adapted. However, on the short term, I fear this option is more expansive.
First question : Is there any other option I didn't see ?
Second question : SQL Azure and SQL Server are they exactly the same thing ? Can I still use the Entity Framework the same way ?
Third question : Do you have any suggestions... pros and cons ?
Thank you.
I fear this option is more expansive.
It is not exactly right. AzureWebsites offer in 3 modes - Free/Shared/Standard. Based on the mode you run, there will be pricing. If your application got limited visitors you can run on Free mode, which is least expensive.
First question : Is there any other option I didn't see ?
Not that I can think of. Your options are - OnPremises, Cloud, Shared Hosting Providers. You are exploring Cloud and Shared hosting providers.
Second question : SQL Azure and SQL Server are they exactly the same
thing ?
SQL Azure is not exactly the same SQL Server. It got its own limitations -
Transact SQL Limitations - http://msdn.microsoft.com/en-us/library/ee336253.aspx
Other Guidelines and Limitations - http://msdn.microsoft.com/en-us/library/ff394102.aspx
This thread showed lot of limitations and associated resources
Can I still use the Entity Framework the same way ?
SQL Azure got EF Compatibility - http://www.windowsazure.com/EN-US/develop/net/how-to-guides/sql-database/
Windows Azure has some Execution Models:
-Web Sites
-Cloud Services
-Virtual Machines
http://www.windowsazure.com/en-us/documentation/articles/choose-web-site-cloud-service-vm/
To use a database you should go with Virtual Machines and install it in there. There's a image of virtual machine that already has Sql server and you don't need to apply your own license, it's in the price you'll pay.
You can also use some features of Windows Azure Storage, such as Table Services or SQL Database (Sql Server for Azure with limitations #ramiramilu said)
if you're just looking at it in terms of the cost of hosting your site, then you may find that traditional hosting may be cheaper.
Windows Azure Websites though provides more than just hosting. You get staging slot, source control integration, monitoring and alerts, redundancy, auto-scaling, etc...
Related
Closed. This question is not about programming or software development. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 3 months ago.
Improve this question
I'm stuck with this problem. I have an Azure subscription for my domain with two Azure VMs named DBServer1 and DBServer2. Each of them hosts a default SQL Server instance. DBServer1 is in the East US Azure region and contains a database named Database. DBServer2 is in the West US Azure region.
How do I configure the primary and secondary endpoints, and what availability mode I need to set?
Also Is there any reliable resource where I can find questions with answers based on Administering Microsoft Azure SQL Solutions?
You can configure the primary endpoint as TCP://DBServer1.contoso.com:5022 and the the secondary endpoint as TCP://DBServer2.contoso.com:5022.
As both DBservers are not in the same region, you need to use async commit. Otherwise delay will cause application issues.
I recommend you read through this article: https://learn.microsoft.com/en-us/azure/azure-sql/virtual-machines/windows/availability-group-overview?view=azuresql
The biggest difference with on-prem is:
Load balancer that is needed in Azure
All nodes inside your cluster need to be a member of an availability set
I also recommend using striped volumes for your SQL files to foresee better performance: https://learn.microsoft.com/en-us/gaming/azure/game-dev-virtual-machine/striped-disks-iops
Here is the resource for practicing the Azure SQL solutions: https://www.study4exam.com/microsoft-exams
Scenario-based questions will help you understand the concepts easily.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 8 years ago.
Improve this question
What is the best way to perform a nightly, automatic backup of a SQL Azure database? I make random backups when I need to before changes using the "create database xxx as copy of yyy" technique but I need something automatic.
I've considered using the Import/Export feature in SQL Azure Labs with a script that runs nightly to export to my laptop
https://www.sqlazurelabs.com/ImportExport.aspx
That sure seems a bit clunky for a service that's supposed to be enterprise ready, though.
Are there better ways to perform SQL Azure backups?
I haven't used it myself, but might be worth a look at Red Gate's SQL Azure Backup. It's currently in beta (expires 1st Sept), and is free. TBH, I'm not sure there are currently a lot/any other options at the moment.
Also see the linked article from there to Grant Fritchey's post on the tool.
Try our SQLBackupAndFTP tool to backup Azure databases to a local folder or to a clouds (Dropbox, Box, Google Drive, Amazon S3 or SkyDrive). Some clouds are available only in a paid version, but you can try all features in Trial mode.
Just select SQLBackupAndFTP with Azure to download it.
The free SQL Azure Migration Wizard now has a command line backup option to pull schema, data (bcp) or both.
I came across this great technique that doesnt use any third party tools and is completely Cloud based.
http://geekswithblogs.net/BenBarreth/archive/2013/04/15/how-to-create-a-nightly-backup-of-your-sql-azure.aspx
This post describes how to use the Azure Mobile Services to create a nightly backup.....pretty sneaky!
Try this out: http://www.bluesyntax.net/backup.aspx. I haven't tried it personally but had a brief look at it and it looks promising. Though we also have a product which supports SQL Azure Backup (http://www.cerebrata.com/Products/AzureManagementCmdlets), it is currently only providing backing up your data to your computer with no restore feature.
The backup tool mentioned by Gaurav provides a command-line utility. The command line utility can be executed on a regular basis using any scheduler, giving you the ability to schedule backups.
Full Disclaimer: I am the author of the tool.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I have created a simple (commercial) WPF application and want to distribute it with a database that can be installed on the local machine of a customer.
What database is the best to use ?
I was considering SQL Server Epress Edition 2008. I know the limitations of 10 GB, but that's more than enough and is no issue.
The only thing I'm not choosing 100% for Express is that I don't know how to let my customer backup the database.
My collegues keep telling me to use MS Access, but I don't know if that's a good option because I want to use stored procedures and views.
Please let me know what you are using or you can advise me...
SQLite is a great alternative. There is an ADO.NET provider developed by System.Data.SQLite
And there is a decent, free, editor for SQLite as well: SQLite Administrator
Backing up is as easy as copying the SQLite db file. Really.
What is the estimated amount of data?
For small databases SQLite may be an good choice - it is light, fast, opensource and needs no additionally software. It even supports encryption, if you need that.
Backup is as easy as it could be, as the SQLite-database consists of a single file.
Ruutert: database-size up to 500 mb:
That size should be no problem for SQLite. We use databases up to several GB. Only problem on big databases is, that vacuum (like reorg / compress unused space) takes as longer as bigger the database is (but that is the same for other database-types)
Ruutert: disadvantages of SQLite?
You could get problems with High Concurrency (lots of parallel database-access). Also I would consider an client-server oriented database-manager if your workload is so heava that you think about moving your database-manager to another server - splitted from application-server.
But as you considered using SQL Server Express or MS-Access, which have limited functionality too, that should not be the problem. On the other side you have the advantage that you need just an small dll (or compile it static into one of you own) instead of installing an complete database-manager.
An embedded database (like SQLite, which others answerers already mentioned) sounds like the right choice for you.
Since you're using .net anyway, how about Microsoft's SQL Server Compact?
(also an embedded database)
SQL-CE does not include stored procedures.
SQLite is usually the chosen one. However, there is also VistaDB.
You could always look into NoSQL or OO databases:
db4o
RavenDb
EloqueraDB
Note that some of these may need separate DLLs in order to expose the providers in .NET code.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'd like to know if there is some open source web front-end for databases.
I'd like something where queries can be executed from a web browser, only read-only queries are fine. If possible it would be great to be able to select with a gui the columns that are displayed as the result of the query.
As several people asked me, I use Oracle. I'd prefer open source to be able to customize if needed.
For MySQL, phpMyAdmin is the only open source tool I'm aware of. I'm not sure about other types of databases.
I've used one called myLittleAdmin for SQL Server, but it's a closed-source paid product. Probably not going to be much help there.
MySQL has phpMyAdmin, which is quite good.
For Oracle and SQL Server there's Maestro.
It depends on wich database you are going to use, i have used phpMyAdmin before and it is really nice.
phpMyAdmin is a free software tool written in PHP intended to handle the administration of MySQL over the World Wide Web. phpMyAdmin supports a wide range of operations with MySQL. The most frequently used operations are supported by the user interface (managing databases, tables, fields, relations, indexes, users, permissions, etc), while you still have the ability to directly execute any SQL statement.
We use DBHawk from Datasparc. It has many features such as web based query builder, editor, SQL report builder etc. It is not open source, but Datasparc provides customization based on your needs. We are using it for our support team where we need to access many SQL Server/Oracle databases through a browser.
For a PHP/MySQL standard setup, I've found SQLBuddy to be a great (and free) little utility. It's really simple, has almost no install, and it is friendly to use. phpMyAdmin can be a bit overkill for some people especially if you're just messing around with the database and wanna check if your entries were inserted. Check it out.
Not good for you if you're using Oracle but as well as phpMyAdmin, there is also phpPgAdmin for us folks who use Postgres.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about programming within the scope defined in the help center.
Closed 7 years ago.
Improve this question
I've written a plugin for a game that connects to a PHP page and sends it information from the game. The PHP page takes this information, connects to a SQL Server 2005 instance, then inserts the information given into a variety of tables.
I am using Apache (WampServer) to host the PHP page and SQL Server 2005 Express for hosting the database server. This setup is 'okay' as far as development goes, but I wish to release this plugin to other players. Their version of the plugin would be identical to mine in that it would connect to a remote PHP page to either add data to the database or query information from the database.
Since 'clients' are not directly hitting the database, would SQL Server 2005 require a paid license of some type for me to 'legally' use it in this way? What is the standard definition of 'production server?'
Note: I am not making any money from this plugin or PHP page however the game the plugin is written for does require a paid subscription. I am not the developer or in any way affiliated with the game however (other than a paid subscription myself).
SqlExpress is free no matter what the deployment, you just have to accept the limitations
Single CPU
1GB RAM Max Usage
4GB Database size limit (not including logs)
Based on your description I think that the SQLExpress would work fine for your application.
Here's a reference from MS http://www.microsoft.com/Sqlserver/2005/en/us/compare-features.aspx
Express is free and does not require a license fee
If you upgrade to a regular (Standard, Enterprise etc) SQL Server version then typically you get a per CPU license for a web server
SQL Server typically requires a license in your scenario, which is multiplexing.
If you are redistributing Express, meaning sending it to people that install it on their machines to use your plugin, yuo need to register (http://www.microsoft.com/sqlserver/2005/en/us/express-redistribute.aspx).
If you have Express on some server that people hit from a web page, you are OK, though you might run into performance issues with the 1GB ram limit.