Requirements
OpenVPMS can be installed on either a unix system (most commonly a Ubuntu* server), or a Windows system. For Windows, for small practices you can install on a desktop or laptop running Windows 7, 8 or 10; for larger practices it may be better to use a Windows Server operating system.
*NOTE: OpenVPMS requires MySQL 5.5, which is included in Ubuntu 14.04. Later releases include MySQL 5.6 or MySQL 5.7 which are only supported via configuration changes.
Both Java and MySQL are available in 32 and 64 bit versions.
If your system has more than 4GB of memory, use the 64 bit version.
Server Software
- Java Platform, Standard Edition 8 or 11
- Tomcat 8.x or 9.x
- MySQL 5.5 or 5.7
- MySQL Connector/J JDBC driver
Java
OpenVPMS may be run using Java 8 or Java 11. Java 11 is preferred, as Java 8 is reaching end-of-life.
There are multiple providers:
- Oracle
http://www.oracle.com/technetwork/java/javase/downloads/index.html - AdoptOpenJDK
https://adoptopenjdk.net/
Java 8
The mimum supported version of Java 8 is Java 8 update 161.
Earlier versions may not include the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files. These are required for strong password encryption. If Java is already installed, its version can be determined by running java -version e.g.:
> java -version java version "1.8.0_191" Java(TM) SE Runtime Environment (build 1.8.0_191-b12) Java HotSpot(TM) 64-Bit Server VM (build 25.191-b12, mixed mode)
Java 11
There are a number of locale changes in Java 11, compared to Java 8.
This causes differences in formatting for date functions that use the LONG, MEDIUM and SHORT date formats, or include MMM (e.g., MMM yyyy). This will affect JasperReports in particular.
E.g. in Java 8, a MEDIUM date format in the en_AU locale would display:
20/09/2006
whereas in Java 11 displays:
20 Sep. 2006
The Java 8 functionality can be retained by passing the following argument to java:
-Djava.locale.providers=COMPAT,CLDR
When using the standard Tomcat scripts, this can be done by setting the CATALINA_OPTS environment variable:
Windows
In a setenv.bat script in the same directory as catalina.bat, add:
set CATALINA_OPTS=-Djava.locale.providers=COMPAT,CLDR
Unix
In a setenv.sh script in the same directory as catalina.sh, add:
export CATALINA_OPTS=-Djava.locale.providers=COMPAT,CLDR
Tomcat
Both Tomcat 8.x or 9.x are supported.
See https://tomcat.apache.org/download-80.cgi
On Windows, select the 32-bit/64-bit Windows Service Installer
MySQL
MySQL 5.5 is supported natively.
MySQL 5.7 may be used with configuration changes.
MySQL 5.5
See http://dev.mysql.com/downloads/mysql/5.5.html#downloads
Download the MySQL Community Server 'Generally Available (GA) Release'.
MySQL 5.7
See https://dev.mysql.com/downloads/mysql/5.7.html#downloads
Download the MySQL Community Server 'Generally Available (GA) Release'.
The sql_mode must be changed to remove ONLY_FULL_GROUP_BY. This is done by configuring the server options file, or via MySQL Workbench.
On Windows, the MySQL installer may require that the Microsoft .Net Framework 4 be installed. This is available from:
http://www.microsoft.com/en-au/download/details.aspx?id=17851
NOTE: when upgrading from an earlier MySQL release, see the relevant MySQL manual for migrating the MySQL data e.g.:
MySQL:
- should be on the same host as Tomcat
- should accept connections on port 3306
- include the following lines in my.ini
max_allowed_packet=16M
innodb_file_per_table
character-set-server = utf8
innodb_buffer_pool_size = 512M
NOTES:
- If character-set-server is not set to utf8, some characters may not be stored correctly. E.g, μ may be replaced with ?
- The innodb_buffer_pool_size value should be seen as a minimum only. See Memory below.
MySQL Connector/J JDBC driver
See http://dev.mysql.com/downloads/connector/j/5.1.html
This may already be included in the MySQL server installation.
OpenOffice
OpenOffice 4.0.x or higher
See http://www.openoffice.org/download/
NOTE: several users have indicated that LibreOffice 5 is not 100% compatible with OpenOffice. Fields may not merge correctly, and documents created in LibreOffice may look different when printed via OpenVPMS.
Memory
A host with 4GB memory is the minimum recommended size for a server running OpenVPMS, with at least:
- 1024M allocated to Tomcat
- 1024M allocated to MySQL via the innodb_buffer_pool_size property
To set Tomcat's memory allocation, see How do I adjust memory settings?
Also see:
Locale and Fonts
For unix systems see Unix Locale and Fonts
For windows systems see Windows Locale and Fonts
Workstation Software
If you wish to use the External Edit facility then the following software is required on all workstations that will edit documents in OpenVPMS:
- Java Platform, Standard Edition 8
The Java Runtime Environment (JRE) is the minimum requirement. That is, neither the SDK or Server JRE packages are needed.
See http://www.oracle.com/technetwork/java/javase/downloads/index.html
- OpenOffice 4.1.2 or higher
See http://www.openoffice.org/download/
Optional Software
- Jaspersoft Studio 6.2.0 or higher
This is only required to customise document templates.
See https://community.jaspersoft.com/project/jaspersoft-studio/releases - MySQL Workbench
This is not required by OpenVPMS itself, but if you are going to do any report development, then you will find that the Workbench’s ability to build and test SQL queries is very useful. You can download it from http://dev.mysql.com/downloads/workbench.