LogoLogo
  • 🐿️NeuroInformatics Database
    • HIPAA Compliance
  • Getting Started
    • Installation
      • Quick Install
      • How to change passwords
      • Optional software
      • MySQL/MariaDB tweaks
    • Upgrade
      • Quick Upgrade
      • Migrate Existing Installation
  • Using NiDB
    • User's Guide
      • Importing data
      • Managing data
      • Finding & exporting data
      • Managing projects
      • Pipelines & analysis
      • Calendar
    • Administration
      • Front end (user facing)
      • Back end
      • nidb command line
  • Specifications
    • Data Storage Hierarchy
    • DICOM Anonymization
  • Tutorials
    • Working with Imaging Data
      • Uploading data for a sample project
      • Troubleshooting Missing Imaging Data
      • Import DICOM data
      • MR scan quality control
    • Manipulating Subjects, Studies, & Series
      • Working with subject IDs
      • Renaming series
    • Pipelines
    • Working with Redcap
      • Importing Data from a Redcap Project
      • Importing Subjects from Redcap
      • Reports based on data imported from Redcap
    • Analysis Builder
    • Administration of Users, Projects, & System
      • User Permissions
      • Creating new projects
      • Adding Users to Projects
      • Editing the config file
      • Deleting all the data
  • Contribute
    • Squirrel data sharing format
      • squirrel utilities
      • Using the squirrel library
      • Example package
      • squirrel vs BIDS
      • Specification v1.0
        • Package root
        • package
        • data
          • subjects
            • studies
              • series
                • params
              • analysis
            • observations
            • interventions
          • group-analysis
        • pipelines
          • data-steps
          • Pipeline scripts
        • experiments
        • data-dictionary
        • Modalities
      • Building squirrel library and utils
        • Building Python Wrapper
    • Building NiDB
    • Creating a Development VM
  • Help!
    • Github Issues
    • Github Discussions
Powered by GitBook
On this page
  • Prerequisites
  • Install NiDB rpm
  • Finish Setup
  • 1 - Backup SQL database
  • 2 - Linux Prerequisites
  • 3 - Database connection
  • 4 - Schema upgrade
  • 5 - Config settings

Was this helpful?

Export as PDF
  1. Getting Started

Installation

Detailed installation instructions

PreviousHIPAA ComplianceNextQuick Install

Last updated 20 days ago

Was this helpful?

Prerequisites

Hardware - There are no minimum specifications. Hardware must be able to run Linux.

Operating system - NiDB runs RHEL 8, RHEL 9 compatible OSes. NiDB does not run on Fedora or CentOS Stream.

NiDB will not run correctly on Fedora, CentOS Stream 8, or RHEL/Rocky 8.6 as they contain a kernel bug. If you have already updated to this version, you can downgrade the kernel or boot into the previous kernel. Kernel 4.18.0-348.12.2.el8_5.x86_64 is known to work correctly.

FSL

FSL is required for MRI QC modules. FSL requires at least 20GB free disk space to install. Download FSL from and follow the installation instructions. After installation, note the location of FSL, usually /usr/local/fsl.

Alternatively, try these commands to install FSL

wget https://fsl.fmrib.ox.ac.uk/fsldownloads/fslinstaller.py # this may work
sudo yum install python2
sudo python2 fslinstaller.py

firejail

firejail is used to run user-defined scripts in a sandboxed environment. This may be deprecated in future releases of NiDB. Install firejail from https://firejail.wordpress.com/

sudo rpm -i firejail-x.y.z.rpm

Install NiDB rpm

Download the latest .rpm package from and run the following commands

Run the following commands

# add repository to install OpenSSL 1.0
sudo curl -JLo /etc/yum.repos.d/mroche-vfx-compatibility.repo "https://copr.fedorainfracloud.org/coprs/mroche/vfx-compatibility/repo/epel-9/mroche-vfx-compatibility-epel-9.repo"

sudo dnf install epel-release # for ImageMagick
sudo dnf install mysql-libs --enablerepo=devel # for libmysql2.1
sudo yum --nogpgcheck localinstall nidb-xxxx.xx.xx-1.el9.x86_64.rpm

reboot # you must reboot to ensure SELinux is disabled before continuing
sudo dnf install almalinux-release-devel

Alma Linux

# add repository to install OpenSSL 1.0
sudo curl -JLo /etc/yum.repos.d/mroche-vfx-compatibility.repo "https://copr.fedorainfracloud.org/coprs/mroche/vfx-compatibility/repo/epel-9/mroche-vfx-compatibility-epel-9.repo"

sudo dnf install epel-release # for ImageMagick
sudo dnf install mysql-libs --enablerepo=crb # for libmysql2.1
sudo yum --nogpgcheck localinstall nidb-xxxx.xx.xx-1.el9.x86_64.rpm

reboot # you must reboot to ensure SELinux is disabled before continuing
sudo dnf install epel-release # for ImageMagick
sudo yum --nogpgcheck localinstall nidb-xxxx.xx.xx-1.el8.x86_64.rpm

Secure the MariaDB installation by running mysql_secure_installation as root and using the following responses. The MariaDB root password is already set to password.

> sudo mysql_secure_installation
  
  Enter current password for root (enter for none): password
  Change the root password? [Y/n] n
  Remove anonymous users? [Y/n] Y
  Disallow root login remotely? [Y/n] Y
  Remove test database and access to it? [Y/n] Y
  Reload privilege tables now? [Y/n] Y

Finish Setup

If you encounter an error when viewing the Setup page...

  • The setup page must be accessed from localhost.

  • Or the config file must be manually edited to include the IP address of the computer you are using the access setup.php. Add your IP address by editing /nidb/nidb.cfg and add your IP address (comma separated list) to the [setupips] config variable. It should look something like [setupips] 127.0.0.1, 192.168.0.1 depending on the IP(s)

1 - Backup SQL database

Copy the mysqldump command and run that on the command line. It should create a .sql file that contains a backup of the database. This is required even for new installations because you should become familiar with, and get int the habit of, backing up the SQL database. After you've backed up the database using mysqldump, refresh the setup page and it should allow you to continue with the setup.

Click Next to continue, and the following page will show the status of Linux packages required by NiDB.

2 - Linux Prerequisites

If there are any missing packages or if a version needs to be updated, it will show here. Install the package and refresh the page. Click Next to continue, and the following page will show the SQL schema upgrade information.

3 - Database connection

Enter the MariaDB root password, which should be password if this is the first installation. The SQL schema will be upgraded using the .sql file listed at the bottom. As your instance of NiDB collects more data, the tables can get very large and tables over 100 million rows are possible. This will cause the setup webpage to time out, so there is an option to skip tables that have more than x rows. This should really only be done if a specific table is preventing the schema upgrade because it so large and you are familiar with how to manually update the schema. The debug option is available to test the upgrade without actually changing the table structure. Click Next to continue, and the following page will perform the actual schema upgrade.

4 - Schema upgrade

If any errors occur during upgrade, they will be displayed at the bottom of the page. You can attempt to fix these, or preferably seek help on the NiDB github support page! Click the red box to dismiss any error messages. Click Next to go to the next page which will show the configuration variables.

5 - Config settings

On this page you can edit variables, paths, name of the instance, email configuration, enable features.

Click Write Config to continue.

The locations of the written config file(s) are noted on this page. nidb-cluster.cfg is meant to be placed on cluster nodes, to allow nidb pipelines running on the cluster to communicate with the main nidb instance and perform check-ins and storing of pipeline results.

Setup should now be complete and you can visit the home page.


Use Firefox to view (or http://servername/setup.php). Follow the instructions on the webpage to configure the server.

Beginning the website based setup process. The backup file must exist before setup can continue.
https://fsl.fmrib.ox.ac.uk/fsl/fslwiki/FslInstallation
https://github.com/gbook/nidb/release
http://localhost/setup.php