Oracle AL32UTF8
Asked by Jeff Kell:

Confluence docs talk about rebuild db for Oracle  
AL32UTF8 is what they want  

Our current Oracle installation has these:  
NLS_CHARACTERSET WE8MSWIN1252   
NLS_NCHAR_CHARACTERSET AL16UTF16   

Our DBA asks:  
do you know any agent from Confluence vendor?  
we can ask them to use our standard of nls?  
I know they if they change their code to ours .. it will work..  

Confluence. I'm trying to update from 6.13.0 to 6.15.9 and didn't expect to get this Oracle Character Set error. However I'm also trying to move to a different server. I planned on installing clean on the new server then pointing at DB. But one error I also get is this:  

Confluence will not start up because the build number in the home directory \[8100\] doesn't match the build number in the database \[7901\].

So do I have to first upgrade on old server before using the new server. Does our Oracle DB really have to change CHARSET? Some of the searches I do in your knowledge share rever to AL32UTF8 issues from 2012 or 2013, which is a long time ago.


Answers:
author: Shannon S
body: Hello Jeff,

Thank you for bringing this to us. Your Oracle database needs to be on the correct encoding (AL32UTF8) in order to be supported by Confluence.

Please see [Database Setup for Oracle](https://confluence.atlassian.com/doc/database-setup-for-oracle-173821.html) for more information:
> Confluence and your database must be configured to use the same character encoding.
>
> Confluence uses UTF-8 character encoding, so your database will also need to be configured to use UTF-8 (or the equivalent for your database, for example, AL32UTF8 for Oracle databases).

You can review [Configuring Database Character Encoding](https://confluence.atlassian.com/doc/configuring-database-character-encoding-177698.html) for more details on that.

The best way for you to resolve this is to create a new Oracle database with the correct encoding. See the above article [Database Setup for Oracle](https://confluence.atlassian.com/doc/database-setup-for-oracle-173821.html) for steps on how to create your database using the correct character encoding, then follow the steps in [Migrating to Another Database](https://confluence.atlassian.com/doc/migrating-to-another-database-148867.html) to migrate.

You will want to first perform the migration to the new database using the same original version of Confluence and after you confirm the new database is working, *then* you can perform the upgrade.

Let me know if you have any questions or trouble with that.

Regards,

Shannon

comments: author: Jeff Kell
body: Ok after 5 weeks...finally have a separate copy of the DB now with new encoding.   
DBA copied data from old DB into new using export / import.   
During upgrade attempt (using .bin and selecting upgrade), after putting these files in place:  
confluence.cfg.xml  
ojdbc8-12.2.0.1.jar  
server.xml  
setenv.sh  
setjre.sh  

And attempting to start the upgraded tomcat/confluence... I get these WARNINGS in the catalina logs:  

bash-4.1$ cat catalina.2019-12-20.log  
20-Dec-2019 10:06:13.514 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server\] failed to set property \[debug\] to \[0\]  
20-Dec-2019 10:06:13.528 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine\] failed to set property \[debug\] to \[0\]  
20-Dec-2019 10:06:13.531 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine/Host\] failed to set property \[debug\] to \[0\]  
20-Dec-2019 10:06:13.550 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine/Host/Context\] failed to set property \[debug\] to \[0\]  
20-Dec-2019 10:06:13.561 WARNING \[main\] org.apache.tomcat.util.digester.SetPropertiesRule.begin Match \[Server/Service/Engine/Host/Context\] failed to set property \[debug\] to \[0\]  
20-Dec-2019 10:06:13.717 INFO \[main\] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler \["https-jsse-nio-8444"\]  
20-Dec-2019 10:06:13.873 WARNING \[main\] org.apache.tomcat.util.net.SSLUtilBase.checkTrustStoreEntries jsseUtil.trustedCertNotValid  
20-Dec-2019 10:06:13.874 WARNING \[main\] org.apache.tomcat.util.net.SSLUtilBase.checkTrustStoreEntries jsseUtil.trustedCertNotValid  
20-Dec-2019 10:06:13.874 WARNING \[main\] org.apache.tomcat.util.net.SSLUtilBase.checkTrustStoreEntries jsseUtil.trustedCertNotValid  
20-Dec-2019 10:06:13.874 WARNING \[main\] org.apache.tomcat.util.net.SSLUtilBase.checkTrustStoreEntries jsseUtil.trustedCertNotValid

The trust store entries are the same as what was used this morning on the older version of confluence on the same server. What can I do next?  

I think I noticed properties/directives in the top of the confluence.cfg.xml file that might possibly change values throughout the install/upgrade process ... but that was based on my attempts on November 14 which ulitmately failed due to the DB encoding need.

What can I do next? Our team for now is offline until I finish this upgrade (unless I rollback).


author: Jeff Kell
body: Ok ... going to do Migrate DB first. But the backup action is not giving me any indication it is doing anything. How can we tell?


author: Shannon S
body: Hello Jeff,

Apologies for the delay; I have been away for the past week.

You can check the backup locations on your server and see if a temporary backup file was created. See [Configuring Backups](https://confluence.atlassian.com/conf613/configuring-backups-964961326.html) for information on where to find that.

I would also recommend tailing your [Confluence Server logs](https://confluence.atlassian.com/conf613/working-with-confluence-logs-964961444.html) which can give you some indication of if the backup is running, or if you encountered an error.

Regards,

Shannon


author: Jeff Kell
body: Hi, I've got another thread going. Here:  
<https://community.atlassian.com/t5/Confluence-questions/Upgrade-pains-with-Confluence/qaq-p/1288858#U1289023>  

Still cannot upgrade from 6.13.0 successfully.  

New DB and all with new Charset...and moved from RedHat6 server to RedHat7 server on Dec 20, 2019.  

Now internal audit group requiring upgrade of Confluence but it never seems to work. See notes in the above link.   

The application appears to start and run (per Linux top command) but the login page is never presented. However if I have an ERROR at startup, I do get a web page describing the same error. It's only after ERRORS in logs are resolved that I get no web page at the URL any longer. And I have no idea what (if anything) confluence is doing. I've waited up to 1 hour. I've had to keep rolling back to 6.13.0 every time. It then starts up in 5-6 minutes and I can login again.  

We are trying to get this copy working and are hoping to move to an Enterprise version for our team soon (managed by other teams) sometime in 2020. For now, this is our teams local copy and we need to figure out how to upgrade and what isn't working.

If you can provide advice either here or in the one I linked above, I would appreciate it.

Thanks.


author: Shannon S
body: Hi Jeff,

Since you raised a new question, I would rather focus our efforts on one case in order to simplify things.

I'll follow-up with you there if there is anything further I can recommend.

Shannon