# Installing eXtremeDB on Windows

> After downloading, simply extract the contents of the zip archive file to a convenient directory. The zip archive contains a single executable file with the same name as the zip archive except with file extension ".EXE". Then do the following:

> ### 1. Start the WISE install wizard

> Double-click on this executable ".EXE" file to start the WISE installation process.

> ### 2. Specify the installation root directory

> > Click "Next" to begin and again "Next" to accept the license agreement. Then "Browse" to specify the installation root directory, or simply accept the default directory proposed. The directory path proposed will look something like "C:\McObject\eXtremeDB\win64vs2013". This part of the filename depends on the specific package options you purchased, like "IM" for in-memory or "Fusion" for persistent storage media. And obviously the last part of the path "\win64vs2013" indicates your platform and version of visual studio. You are free to specify any directory path you like. Click "Next" to accept the directory path.

> ### 3. Specify the package components options

> > This screen asks you to select the package components options:

> > - Samples - SDK samples demonstrating individual eXtremeDB features
> > - ODBC Driver - when the SQL module is part of the package this option installs the eXtremeSQL ODBC driver

> > The numbers to the right of the options indicate the disk space they will occupy. We recommend leaving all options checked unless disk space is a concern and you have sufficient experience with the eXtremeDB APIs to do without Reference Guides or SDK samples. Click "Next" to confirm the options.

> ### 4. Select the Program Manager group

> > This screen asks you to select the Program Manager group from those listed in the box below. (This is the contents of the system directory "C:\Users\USERNAME\Start Menu\Programs".) Some versions of Windows will display this folder under "All Programs" from the Start Button menu. This is simply a place to store all icons related to the current eXtremeDB installation. Select the directory where you want the Win64 icons to be stored and click "Next".

> ### 5. Build the installation directory tree

> > Click "Next" one last time to begin the installation. In a few moments you will be asked to click "Finish" to exit and terminate the install wizard.

## Wise Installation completed

> Now all of the software components necessary to build eXtremeDB applications with C, C++, Java, C# and Python, as well as documentation and SDK samples (if you did not exclude them), are available in the root directory you chose. Suppose that you purchased the Financial Edition and specified the root directory "C:\eXtremeDB", after installation, your directory tree will look like the following:

>         c:\eXtremeDB
>             \documentation
>             \host
>             \include
>             \samples
>             \target
>             license.txt
>             make.bat
>             samples-*.sln
>             UNWISE.EXE
>             UNWISE.INI

See Package Contents for an explanation of these contents.

## Setting up the Development Environment

> The Java and Python SDK samples require that a Java JDK and a Python interpreter be installed on the development system and environment variables must be set appropriately. The procedure for setting environment variables varies with different versions of Windows. For example, on Windows10, you open the Control Panel and navigate to the "Control Panel -> System Security -> System -> Advanced system settings" dialog and select "Enviroment Variables". This opens a dialog that allows you to edit system variables. (Please consult Microsoft documentation for instructions specific to your version of Windows.)

## Java

> The Java SE (Standard Edition) JDK is required to build and run the eXtremeDB Java samples. (The JDK may be downloaded from the Oracle site: http://www.oracle.com/technetwork/java/javase/downloads. It does not matter if JDK x32 or x64 is used because both Java compilers generate the same byte-code.)

> Please be aware that eXtremeDB has not been thoroughly tested with other JDKs (OpenJDK, etc.) and its proper functioning with these other JDKs is not guaranteed. If, when trying an alternate JDK, the `MCO_E_VERS_MISMATCH` error code is returned from the eXtremeDB Java API, it is recommended to switch to the Oracle JDK.

> Also, the environment variable `JAVA_HOME` needs to be defined, and the `PATH` variable needs to be correctly set: `JAVA_HOME` must point to the directory where Java is installed and the `PATH` variable needs to include the java binaries directory. For example, assuming that you installed the JDK version 1.8.0, the `JAVA_HOME` path would be:

>         JAVA_HOME=C:\Program Files\Java\jdk1.8.0_65

> The `PATH` system variable then needs to be edited to include the JDK binaries directory, for example:

>         C:\Program Files\Java\jdk1.8.0_65\bin

## Python

> Python can be downloaded from the Python official site: https://www.python.org/downloads/. The eXtremeDB Python API support for Windows platforms makes use of the official Python executables that were built with Visual Studio 2008. Therefore the Visual Studio 2008 C runtime (CRT) is required to run the Python interpreter. (Normally the Visual Studio 2008 CRT is installed when the eXtremeDB package is installed. However, if it is missing from the runtime environment, the redistributable CRT is available for download from the Microsoft website.)

> The Python interpreter needs to be started with the `PYTHONPATH` environment variable correctly defined. By default, the eXtremeDB Python Wrapper will be installed in the `target/bin/python` subdirectory of your eXtremeDB installation root. So the PYTHONPATH path would be:

>         PYTHONPATH=C:\eXtremeDB\target\bin\python

> ## ODBC

> The eXtremeSQL and eXtremeDB for HPC packages include the McObject `ODBC` driver which can be used to connect to eXtremeDB databases. Normally the `ODBC` driver is installed automatically during the installation procedure. It can be removed by uninstalling eXtremeDB. If for any reason the ODBC driver is removed, it can be re-installed manually. The following links explain the installation steps depending on your Windows platform:

> Windows x64 Installation | On a Windows x64 system either the x64 or x32 ODBC driver can be installed
> Windows x32 Installation | On a Windows x32 only the x32 ODBC driver can be installed.

> Once the McObject ODBC driver is properly installed, ODBC data sources (DSN) can be set up to access the desired eXtremeDB databases. Please use this link for instructions on creating DSNs.

> ## JDBC

> The eXtremeSQL and eXtremeDB for HPC packages include a `JDBC` driver to provide access for Java applications to an eXtremeSQL server using a widely applicable industry connectivity standard.

> The eXtremeSQL `JDBC` driver is a pure-java "Type 3" driver designed for `JDK/JRE 1.6.x` that interacts with the eXtremeSQL server-side middle-ware that then accesses the eXtremeDB database. It is implemented in the Java archive file `extremedb_jdbc.jar` in the `target/bin` directory.

> To make the driver accessible to an application this file must be specified in the `PATH` and `JAVA_HOME` environment variables. For example:

>         set JAVA_HOME=/usr/java/jdk1.6.0_34
>         set PATH=/usr/java/jdk1.6.0_34/bin:$PATH

> Please use this link for an overview and examples of JDBC application using local and remote eXtremeDB databases.