Automatically Download Latest SQL Server CU/SP? - sql-server

I have a PowerShell script to automatically install sql server, and I added functionality to install updates along with the base installation. Right now I'm just putting the download link for the update into the WebClient.DownloadFile() method, but I know of a way to programatically find the download links for specific updates. I'd prefer to not hardcode download links into the script in case they change on the download site, but right now I have to.
Is there a more concrete/standard way of downloading SQL Server updates, or just consistently finding the downloads?

Related

How to keep track of the previous version number in MSI WIX

I'm trying to add a functionality of upgrading my SQL database using one single upgradeScripts.sql file in which I need to hardcode the previous build version and before running the upgrade scripts I need to check If the upgradeScripts.previous build number matches the LocalDB.build number. If don’t match then don’t execute the upgrade scripts.
So how can I hardcode the previous build number in WIX itself?
I prefer to create a table in the database itself and use that. It's all too easy to backup/restore a database and install/uninstall/reinstall/upgrade who knows what version for the MSI version to matter. What's important is that the current MSI being installed can create a net new database and migrate a previous schema to the current version. I do this for simple databases that need to be installed on clients silently.
Alternatively, for servers/more complex database, I like to move this out of the installer and into the application. For example Azure DevOps server does this with an Admin Tool. This way your developers have all of their favortite tools available to them without struggling with WiX and MSI.
Not sure you can do it via wix, but you can store build number in registry and use custom actions to check it:
Add custom action
In that custom action try to read value from registry
If there's some, run your script with values. you can do it from custom action too, or modify script and run it via sql script
After successful installation add new version to registry. You can do it via CA with OnExit="success" - it will run only on successful installation. Here's example with cancel, just change it to success. Or just add custom action after your scrit run. It's easier.

SQL Server Database Project

I want to use database project for script deployment in Azure SQL Server, I don't want to import full database. I just want to use database project for delta script. I added a project and included one script file with none as build action that contains create table statement , I am publishing the project, It's completing successfully but create statement is not executing. What is wrong here? Is there any other way to do this?
TLDR: Set your build action to "Post Deployment Script".
Longer:
What happens in SSDT is that all the files that have a build action of "Build" are built into a model of what the database should look like. When the deploy happens that model is compared to the target database and if there are any changes, a change script it generated and then optionally deployed.
If you have any file marked pre or post deployment script then they are either prepended or appended to the change script and will be run as part of the deployment.
If you have any files with a build action of "None" then SSDT ignores them, you could put anything in there, even an ascii picture of a donkey and the project will still build and deploy (obviously your ascii donkey won't get deployed anywhere).
If you just want to use SSDT to do your deployments you can just set the build action to pre or post deploy and it will be included. This is pretty odd though, either don't use SSDT or use SSDT and put the model of your entire database in there.
Personally, I would use SSDT properly and live the dream.
Ed

Mercurial Hook to Execute Pulled SQL Files After Update

I am using SourceTree with a Mercurial BitBucket repository. I would like for any SQL script files (*.sql) pulled from my remote BitBucket repo into my local one to simply be executed immediately after I update my working copy with the pulled files. The DB connection info would always be the same.
What would be the simplest way to accomplish this with either SourceTree itself or perhaps a mercurial hook? In the latter case, I believe something could be done with an update hook, but I'm not exactly sure how to set one up.
I am running SQL server 2012 on a Windows 7 machine.

Oracle Database Mobile Server first steps

I download jdeveloper studio edition and install it in C:\Oracle\Middleware
then I install weblogic instance using C:\Oracle\Middleware\wlserver_10.3\common\bin\config.exe
to C:\myproject\domains\myweblogic
Then download DMS_11.1.0.0.0_WINDOWS.zip and install it to C:\Oracle\Middleware\Mobile.
thereafter cant start
C:\Oracle\Middleware\Mobile\Mobile\Server\bin\runmobileserver.bat
unless i change the variable to this batch file
set DOMAIN_DIR=C:\myproject\domains\myweblogic
what do I do next to see that it works?
is there a simple example that creates a sigle table and synchronized between server and mobile clients?
very difficult to find information on this technology. interfere very popular tags (Oracle, Database).
If you install Database Mobile Server directly in the WebLogic directory, you will not need to edit the batch file. For instance, I believe the default install directory is:
C:\Oracle\Middleware\wlserver_10.3
So if you used the default install directory, you would install Database Mobile Server there, with no added 'Mobile' or other directory. If you chose to install WebLogic elsewhere, then replace the above with that directory.
There is another small issue to be aware of.
The installer will give you warning about installing in a non-empty
directory. You should click through the warning. This is a known issue
documented in the Release Notes.
Regarding your other question about a demo, there is a Java demo found in
<MOBILE_HOME>\Mobile\Server\demos\consolidator_api
You will need to download a client and perform a sync, which is documented here:
http://download.oracle.com/docs/cd/E22663_01/doc.11100/e22681/instsqlite.htm#BABGAACI
I hope that helps, good luck with your project. Let me know if you have further questions.
Eric Jensen, Oracle PM

Reinstall xampp

Im using a mac. Xampp stopped working after the latest update 10.6.8 and I think it may be a direct result of the update. Anyway, Id like to reinstall xampp however i didnt backup my database and i cant get into localhost/phpmyadmin to import it. Is there anyway I can backup my database another way and reinstall xampp? or is there another problem as to why the pages dont load.
I get this error when i go to localhost/phpmyadmin: The requested URL /phpmyadmin was not found on this server.
When you use XAMPP, it automatically freezes all the other database. If you are using mysql, you can backup them either using
1.mysqladmin tool (http://dev.mysql.com/downloads/gui-tools/5.0.html)
directly login as the admin and select the databases that you need and backup.
or
2.using command line (manual backup):
goto mysql/bin and then follow this tutorial: http://linux.byexamples.com/archivesc/90/backup-and-restore-mysql-database/
When you uninstall xampp, the databases (in var/mysql) and the htdocs folders are not normally deleted by the uninstall wizard. When you reinstall xampp, those existing folders will be used. It's also a good idea to back up those folders directly to reduce the risk of loss.

Resources