I've recently finally finished upgrading from BE 16 to 20.3, so far so good, SQL Server 2014 remains the default version that BE 20 relies on for the BKUPEXEC instance.
I'm doing overall upgrade planning on our infrastructure and saw SQL Server 2014 SP3 will get out of mainstream support in july 2019 identified which systems still run this version, Backup Exec server being one of them. Even if the extended maintenance support continues, MS will definitely limit their efforts for 2014 in favour of 2016 and newer. Thus I'd like to get all our DB instances upgraded in time - where possible to the same versions on the whole infastructure so that we have to keep an eye on less software version to keep patched and maintained.
The BE 20.3 admin guide mentions SQL Server 2014 Express SP2 as minmum requirement, however I haven't found an indication what newer versions of SQL Server (Express) are supported for the BKUPEXEC instance.
Ideally I'd like to upgrade to SQL Server 2017, then again if Veritas doesn't support new SQL Server for the BKUPEXEC instance it wouldn't be worth the effort. Hence my question about what versions are actually supported by Veritas in this case - and where I can find about.
Solved! Go to Solution.
If your company plans on migrating from SQL 2014 globally to 2016 or newer, currently upgrading a SQL instance installed and used by BE isn't going to be easy even possible right now. After some time working with the Veritas support I thought I could share some details nonetheless:
It's really disappointing to realize that in 2019 with the new BE 20.4 Veritas still ships SQL 2014 32-bit while BE itself has been 64-bit only since BE15 (that's 2 major releases by now). SQL Server 2014 is the last version made available for 32-bit at all and reaching end of mainstream support this year. All newer SQL Server releases are only made available in 64-bit editions. At some point Veritas will *have to* provide a working and supported upgrade path for its customers.
To note: Upgrading from 32- to 64-bit editions of SQL Server in-plase is not supported by Microsoft at all.
So far I've not been pleased with the Veritas support engineers who at some point even wanted to talk me into SQL 2017 wasn't supported (contradicting the SCL) or that they'd support SQL 2014 with BE even after MS ending mainstream support for 2014. (Veritas cannot backport fixes into MS SQL 2014, this would be possible with an open source DBMS)
Warnings ahead if you intend to upgrade the default BKUPEXEC instance:
Your only way to migrate any given MS SQL 32-bit instance according to Microsoft is to export/import or attach/detach from the old to a new instance at some point. At some point the software on the other end needs to know about possibly changed connection parameters.
In the case of Backup Exec the article I've been pointed at (https://www.veritas.com/support/en_US/article.100001771) has not worked for us. beutility at some point in the process detaches the BEDB database from the old install yet fails to re-attach onto the new instance. The end result was that the database was not attached to neither the old, nor the new instance and BE services would not start.
The new SQL Server instance was installed according the Veritas' own instructions (https://www.veritas.com/support/en_US/article.100023028). But I have been able to reproduce this with any given combination when attempting to move the DB from 2014 x86 -> 2017 x64, 2014 x86 -> 2014 x64 and even 2014 x86 -> x86.
Had I not taken a DB dump with beutility before the attempt, would have resulted in further disruption of services. In our case the restore of the DB with beutility worked but the was left with the DB wrong owner of teh DB ending up in ODBC connectivity errors thrown by Backup Exec.
Before you restarting all BE services, using SQL Studio, check that the 'BEDB' owner is 'sa' and that under the the DB's ->Options -> Miscellaneous -> Trustworthy is set to TRUE.
If there is anything that I can share going forward I'll try to update this thread. For the moment I'd not encourage attempting the upgrade of the SQL Server instance used by Backup Exec if it is the default 32-bit 2014 version.
Sorry for not sharing an update, but honestly it was a big struggle with Veritas back then since they first tried to do fingerpointing then in the end pressure from upper to the following procedure:
If nothing has changed between last summer, it means that they are still deploying an outdated 32-bit SQL DB with their current product. This was the case with 20.5 still. I haven't checked if they have in the meantime finally started offering a real migration guide. We really wanted and needed to get rid of SQL 2014 bach then in order to get rid of old releases.
Thank you for the heads up, just wanted to clarify is it safe for us to upgrade our current SQL database from 2012 x64 to atleast SQL 2014 x86 (included from the 20.4 installer) or better to install x64 SQL as well?
Sorry for asking it here as it's a pain to talk with the veritas support, we are planning to migrate our Backup exec from an old server to a new one but we can't proceed with it using the backup exec migration assistant as we are having errors with SQL permission and SQL compatibility, found out that the installer only includes a SQL 2014 x86, so I'm thinking if we can update the SQL 2012 from the source to atleast 2014, we might also get rid of the perms issue? cause for some reason we are also getting no access permission to the database even though the same service account was used.. I was sitting with the support for a few hours and we were not able to fix the issue at all, hoping for a reply and advance thank you!