In today’s video we’ll give a quick demonstration of deploying an APEX application using the SQLcl implementation of Liquibase.
I Know what you’re thinking. Didn’t I do this video two weeks ago? The answer is yes and no. This video is very similar to the Liquibase video I did two weeks ago, but that was using the Liquibase Pro client. This video uses the SQLcl implementation of Liquibase, and more specifically the runOracleScript tag to achieve the same thing.
The video is based on this article, which has an example of deploying an APEX workspace and an APEX application.
The stars of today’s video are the offspring of Jeff Smith. I had been annoying Jeff on Twitter DMs while he was meant to be on holiday, so I agreed to pay him back by turning his children into international megastars. I take no responsibility for how they handle the fame! 😉
The star of today’s video is Jorge Rimblas, making a welcome return to the channel, along with some serious reverb. 🙂 Last time we saw Jorge was in a boxing gym, and his daughters have also taken the spotlight for one video.
In a previous post I mentioned the updates to my Vagrant builds to include this version, as well as updates of Tomcat and Java. I’ve subsequently done the updates for APEX 18.2 on Docker too. If you are interested you can see them here.
In addition to this we’ve rolled APEX 18.2 out at work. We already had some installations of APEX 18.1, but many were stuck on version 5.1.4 because of time constraints. Now everything is up to APEX 18.2. We still have a range of database versions (11.2, 12.1, 12.2 and soon to be 18c) at work, and it’s worked fine on all of them.
I spied a couple of people asking about the upgrade process. There’s no difference to previous versions. In the past, if one of the first two numbers change you do a regular install. If it’s not one of those major version changes you download the patch from MOS and apply it. Since this is a major version number change, I installed it in the normal way and everything was fine. I’m not sure how this will work going forward, as I suspect all releases will start to use the new version format, so does that mean every release from now on will be an “install”, not a “patch”? (see update) Someone has probably discussed this already and I missed it. 🙂
I only have one little gripe about the upgrades, which is I have to run an ORDS Validate once it’s complete to make sure ORDS is working fine. It would be really nice if APEX could fix whatever gets broken in ORDS, so I don’t have to do it. It’s just one less step to do… 🙂
Update: The subject of install vs. patch was raised at OpenWorld 2018. I sounds like the current plan is to get rid of patches and take the install approach each time. The APEX team are working on reducing the downtime associated with the upgrades…
I recently got a question about APEX, which in itself is kind-of funny as it’s a case of the blind leading the blind, but as a result of that question it became apparent the poster was running a very old version of APEX. My first reaction was “Dude, you really need to upgrade!”. It was at that point I was hit with a line I’ve heard a lot over the years.
“Our DBA(s) won’t install/upgrade APEX!”
This gets on my nerves for a few reasons.
APEX is a free (no cost option?) tool. Why would you not take advantage of it if it fits your purpose?
Even if you don’t want to use APEX directly, it comes with some useful code. I use the APEX_JSON and APEX_WEB_SERVICE packages all the time from PL/SQL. Why would you hinder your PL/SQL developers by not giving them access to useful stuff?
If you already have APEX installed, why would you possibly think it is good to run an old version? Like any other piece of software the upgrades include bug fixes, not just new functionality. Are you really happy about running with un-patched functionality?
Of course the newer versions have improved functionality, which is just nice to have. 🙂
I guess I can kind-of understand companies/people who don’t want to install an extra product into the database as it’s another thing to manage, but I really don’t understand people running old versions. I see nothing but disadvantages in that…
So back to the title of this post, “Hey DBA, install/upgrade APEX!”
I wrote a post a couple of weeks ago about our roll-out of APEX 5.1.1 to our Dev and Test systems. In that post I said we would probably go live pretty quickly. I intended to write a quick post to say when it happened, then promptly forgot… 🙂
Just a quick note to say there were no issues found in our Dev and Test systems, so we quickly moved it out to production. I think it was less than a week from start to finish.
As always I feel the need to point out that our usage of APEX is quite basic. We don’t have loads of applications and the ones we have aren’t super complex, so it’s pretty easy for us to quickly get some confidence in a new release. I’m not suggesting heavy APEX users should be quite as rapid as us. That said, I think it’s nice to let people know that this stuff does do what it’s meant to. 🙂
We now have 5.1.1 in all our production systems. Happy days!
APEX 5.1 was released for download a few days ago. I tried doing an upgrade against an installation on a VM at home and it worked fine, which was hardly surprising. 🙂
Officially I’m on holiday, but I figured I would upgrade all our Dev/Test installations while everything is quiet. Major version upgrades, changes in either of the first two numbers, require a full installation. There was no major difference between this and what I was doing for the 5.0 installations, so I just edited the existing article and altered the title.