ShopSite Enterprise Database Server Configuration

ShopSite Enterprise is a high-end solution for merchants wanting to run a database server such as MySQL or MariaDB.

Warning:

Whenever connecting to your server for administrative purposes (such as installing or upgrading ShopSite), you should use a secure connection. Telnet and standard FTP are both unencrypted connections, and could be intercepted. Always use a secure connection, such as SSH for shell connections, and FTP over SSH or SFTP for file transfers.

Overview

These instructions are for the initial setup of the database server and optionally, for migrating data from an existing Starter, Manager, or Pro store into the database server.

Setup Database Server

ShopSite Enterprise supports either MySQL or MariaDB database servers. Once you have a working version of either database server do the following:

  1. Create an empty MySQL/MariaDB database. Note: ShopSite uses the Latin1 character set. This is typically the default character set in both MySQL and MariaDB.
  2. Create a MySQL/MariaDB user with password. At a minimum, the user will need the following prvileges ALTER, CREATE, CREATE TEMPORARY TABLE, DELETE, DROP, EXECUTE, INDEX, INSERT, SELECT, UPDATE, CREATE VIEW, TRIGGER
  3. Copy ss_removehtml.so (from the install directory) into MySQL/MariaDB's plugin directory (this is typically located in /usr/lib64/mysql/plugin). Then create the function in MySQL/MariaDB using this query:
       CREATE FUNCTION ss_removehtml RETURNS STRING SONAME 'ss_removehtml.so';
    
    To verify the CREATE worked run:
       SELECT * FROM mysql.func WHERE name = "ss_removehtml";
  4. Make note of the MySQL/MariaDB URL and port # (or if localhost the Socket File path and name) for use when you later run wwwinstall.cgi

Import ShopSite Starter, Manager, or Pro database

If you are upgrading a ShopSite Starter, Manager or Pro store to Enterprise you will need to import the ShopSite databases into the database server. This can be accomplished either from the Back Office or via the command line.

Back Office Import

Unless you have a database of tens of thousands of products this would be the recommened way to import your data. Go to Utilities and then to Database. You will see a prompt at the top of the screen saying:

The Enterprise MySQL/MariaDB database has not been correctly set up. Click here to configure

Click the link and follow the prompts. You will need to know the database server's:

Command Line Import

Use the command line if you have a very large number of products/pages (e.g. tens of thousands) and you think that the web server might time-out using the back office method. Do the following:

  1. Use the command line program ss_mysql_upgrade (found in the install directory.) Note that this program will need to have permissions to data/cr.aa file. For example:
    ss_mysql_upgrade [storeid] [data dir path]
    
    (where you fill in the name of the store and the path to the data directory. You will then see the following menu displayed:
    SSdb: h
     h  - This message                   q  - Quit
     sv - Show server values
     se - Edit server values
     tc - Test Connection
     tp - Test for plugin
     ct - Create Tables/Indexes
     cp - Copy data to server db
     es - Enable server db
     ds - Disable server db
    
    Run the following commands:
      se  (follow the prompts)
      ct  
      cp
      es
    
    The data from the ShopSite databases should now be in the database Server.