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 1 year ago.
Improve this question
I'm trying to configure azure sql database backup to my local server in weekly basis. This backup will be automatically. even its fine its possible togenerate database script through c# code. There have any tools or c# code that I can create schedule task to take back in weekly or daily interval ?
Thanks in advance!
You should use the Azure feature for the automated backups.
If you setup using the azure webapp, be aware that you can find the backups option at the server (and not at the database) level.
For the retention policies and the frequencies you can look into the Microsoft documentation which is well written.
OK, while the ans by #Giovanni Patruno is totally correct, I will share a no-cost and platform-independent solution, that I am using to backup my DBs.
By No-cost I mean, Azure automated backups and retention policies have cost associated with it but if you want to save that bit, you can design your custom backup pipeline using SQLPackage.exe or PowerShell Az module.
By Platform independent I mean, by using Azure automated backups you can only backup your database on Azure servers. What If you want to restore it in your local environment be it windows or Linux? Then you go the following way:
Create .BACPAC file of your Azure SQL database using SQLPackage.exe at the scheduled time and either download and store it locally or store it in Azure storage account. Later you can restore your database on windows or Linux using SQLPackage.exe (!again) or keep this file for as long as you want for LONG TERM RETENTION.
You can do the above processes using PowerShell AZ module as well.
Both of these processes are well documented here.
Related
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 6 years ago.
Improve this question
I have spent a few days for implementation and testing some SQL-based database management system for my project. It's a small local shop management system, supposed to be sold to many of users and shop owners. It will be an offline system for owners and the staff of the shop, so we need to secure the database from unwanted accesses. I need a SQL database management system that works with .NET Winform (C#) EntityFramework and easy to build an installer package. These are what we have tried:
SQL server Express 2012: SQL database, free, works well with .NET and Entity Framework but pretty hard to build a perfect installer for users without having them to manually install SQL Server System on their computer and it doesn't protect the database from unwanted accesses.
Localdb: portable, free, works well with .NET and EF, easy to deploy, very reliable but again, not secure.
SQL Compact Edition: almost the same as Localdb, has its own password encryption feature for the database but has been deprecated, isn't stable enough and doesn't work really well with EF.
SQLite: just like SQL Compact edition.
SQL server 2016 Developer edition: same as SQL Server Express, plus the database encrytion (TDE), but I haven't figured out how to make a good installer.
There are tons of software like this out there, how did they solve these problems?
Looks like SQLite will suit your bill. Entity Framework does have an SQLite provider and the database itself requires no server software or other infrastructure to be set up, it’s literally just a file.
If you really want to make it secure, you could encrypt the entire database, but that would have certain memory and CPU requirements to work with. If you encrypt individual fields, the schema and individual fields will be visible. Foreign keys could be difficult with such setup.
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 8 years ago.
Improve this question
We are a small startup with majority PHP talent and also C# talent. We're working on a web service which is going to we be talking to multiple clients like our website, phone apps and some embedded devices. We have decided to go with asp.net Web API for the web service and php for the web site.
Being a startup we are extremely sensitive to cost. Is this setup too costly to host and what would the performance be like if we host this configuration on a single server?
Visit Azure pricing tab. Your best bet is to host WebAPI on Azure or a Windows VPS.
In case of VPS, you can buy managed windows VPS (costly) or an un-managed windows VPS. A quick Google search can give you the cost estimates for same.
In case of Azure Websites, everything is managed by MS & you just need to deploy your code to Azure.
If you can't afford Azure, go with PHP for REST services.
In general, hosting on Linux is much cheaper than windows.
Apart from hosting, you may need to invest in SQL server (you can also use MySQL on windows). VS 2013 community is now free and hence you have saved some cost for IDE.
Assuming you choose windows, performance depends on so many things (server config, code etc). No can answer this vague question. Having said that, IIS can handle large volumes.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I have created a Windows Forms application in .NET 4.0. Now there are about 20 client machines where the application has to be reinstalled every time there is a build change.
Is there a way I can push the application to all the machines in the client network in a single go?
ClickOnce is your friend.
In short, ClickOnce allows you to publish an application to a server and users can browse to an associated installation website and install your software.
If your ClickOnce settings are set properly, each time the user launches the application, the application will check for an update on the server, download it if it exists and update then application.
It's worth noting that with each update, the entire application is re-installed. This can save you a ton of headaches but if your application is large, it could be a nightmare for your users if you update the system frequently. Hit the link provided above for all of Microsoft's information regarding this deployment mechanism.
You can have your sysadmin create a Group Policy to do this.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 10 years ago.
Improve this question
I have a requirement as below.
Windows application in c# with My sql database.
MySql database in both local and server .
One centralized server with many client
Synchronizing the server database at each time when the new entry or update is
happen in local machine.
The server data also needs to be updated in local at regular intervals inorder to avoid conflicts
I need to know what is the best approach to follow to make this synchronization without any conflicts.
Thanks in advance
If your "local machines" are always connected to the server, you don't need a local database - you can connect directly to the server as one MySQL server can handle multiple clients...
If, however, your central server is not always available or your clients can go offline and should still be able to work and they synchronize data when they come back online, then what you need to build is an Occasionally Connected Application.
See if you can use any of the recommendations on that page. If I were you, I would start exploring Synchronization Services for ADO.NET (MySQL has a full ADO.NET provider)
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 am planning on writing and commercialising a C# app which will store data in an underlying database
I use MySQL on my environment for my own development and this is what I would have used to write the application for myself (no need to use FK - MyISAM engine would be fine).
I am concerned about how easy it will be to distribute the app together with the database engine.
Would using MySQL allow me for easy packaging of the app for a "one-click" install on the client side? (ie I do not want them to have to install MySQL by themselves) and also is it feasible from a licensing point of view?
Are there other Database systems which would make the process more straight-forward
Take a look at SQL Server Compact 3.5
Sqlite is very simple. You just deploy the DLL with your app. I can't tell how appropriate it is for your situation, given the lack of info.
I think SQLite could do the trick, as it is a filesystem-based database, so no installation required.
Access could also do the trick, and most of businesses have it already installed as part of Microsoft Office, though you wouldn't need it to be installed in order to use the Odbc or OleDb assemblies that are part of the GAC.
The key here is what kind of database you need. Is this database to be shared among several users of the app? If so, than MySQL would be fine.
But it sounds more like you intend to use this database as a private data store, where each installed instance of the application has it's own data local to that machine or profile. In that case, you want an in-process engine like Sql Server Compact Edition, Sqlite, or even Access rather than a server-class engine like MySql or Sql Server Express Edition.
I think, that an embedded DBMS is the best way for yor. For example, you can use Firebird Embedded
SQL Server 2008 Express is available for redistribution by ISVs. You an also deploy this using Microsoft Web Platform Installer.
SQL Server Express is another option. Has excellent integration with .NET, free to install and supports upto 10GB per database (or more if you use the Filestream feature).