Default Migrations Guide
Introduction
Migrations are separated by service type to make it easier to split the database.
One of the main reasons for this is that we have been working to allow different components of the platform (Authorization, API, and MibServer3) to each have their own database and server.
This guide will help you identify the migrations required for each MIB component.
Pre-Requisites
- Install mibmigrator locally.
Migrations
All migrations are located on MibDlls\MibMigrator folder. These are the required migrations for each server/service, and should be executed in the mentioned order:
List of Migration Projects
- MediaiBox.Core.Database.Migrations
- MediaiBox.Agents.Plugins.Mailer.Database.Migrations
- MediaiBox.Analytics.EventCollector.Database.Migrations
- MediaiBox.Cms.Authorization.Database.Migrations
- MediaiBox.Cms.Api.Database.Migrations.
- [MediaiBox.Cms.Api.Database.Migrations.BasicObjects.](Assemblies/MediaiBox.Cms.Api.Database.Migrations.BasicObjects.md
- MediaiBox.ContentCriteria.Database.Migrations
- MediaiBox.Cms.FrontEnd.Database.Migrations
- MediaiBox.Cms.FrontEnd.DmmDashboard.Database.Migrations
- MediaiBox.Cms.DefaultPages.Database.Migrations
Mib Core Base
Requirements
- None
Migration
- MediaiBox.Core.Database.Migrations
Description
This is the initial migration, all mib services depend on this migration.
It has the base structure for using MibObjects, click here to find out which tables this migration has.
Usage
mibmigrator -assembly=MediaiBox.Core.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
MibAuthorizationServer
Requirements
- MediaiBox.Core.Database.Migrations
Migration
- MediaiBox.Cms.Authorization.Database.Migrations
Description
The tables required for the mib authentication service to work will be created, such as user, group, permissions tables, etc. For more information about the tables click here.
Usage
mibmigrator -assembly=MediaiBox.Core.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
mibmigrator -assembly=MediaiBox.Cms.Authorization.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
MibServeApi
Requirements
- MediaiBox.Core.Database.Migrations
Migration
- MediaiBox.Cms.Api.Database.Migrations
Optional
- MediaiBox.Cms.Api.Database.Migrations.BasicObjects
- MediaiBox.ContentCriteria.Database.Migrations
Description
MibApi works based on data metadata to manage content. The tables created are responsible for storing information about the tables that will be used for content, such as the name of the table (MEDIA_TYPES), which types and columns this table has (ADM_FIELDS), relationship types (ADM_RELATEDS), etc. For more information about which tables will be generated, click here.
Usage
mibmigrator -assembly=MediaiBox.Core.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
mibmigrator -assembly=MediaiBox.Cms.Api.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
// Optional
mibmigrator -assembly=MediaiBox.Cms.Api.Database.Migrations.BasicObjects.dll -configPath={MIBCONFIG-FOLDER-PATH}
mibmigrator -assembly=MediaiBox.ContentCriteria.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
MibServer3
Requirements
- MediaiBox.Core.Database.Migrations
Migration
- MediaiBox.Cms.FrontEnd.Database.Migrations
Optional
- MediaiBox.Cms.FrontEnd.DmmDashboard.Database.Migrations
- MediaiBox.Cms.DefaultPages.Database.Migrations
Description
The generated tables will store menu data, templates for creating pages, page information and respective settings, which components will be used on a page and their respective settings. Click here to see which tables will be created.
Usage
mibmigrator -assembly=MediaiBox.Core.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
mibmigrator -assembly=MediaiBox.Cms.FrontEnd.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
// Optional
mibmigrator -assembly=MediaiBox.Cms.FrontEnd.DmmDashboard.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
mibmigrator -assembly=MediaiBox.Cms.DefaultPages.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
MibAgents2Mailer
Requirements
- MediaiBox.Core.Database.Migrations
Migration
- MediaiBox.Agents.Plugins.Mailer.Database.Migrations
Description
Tables will be created for sending emails via MibAgent Mailer. Click here to see which tables will be created.
Usage
mibmigrator -assembly=MediaiBox.Core.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
mibmigrator -assembly=MediaiBox.Agents.Plugins.Mailer.Database.Migrations.dll -configPath={MIBCONFIG-FOLDER-PATH}
Breakdown of Tables per Migration
These are the tables that are created in each migration.
MediaiBox.Core.Database.Migrations
- LANGUAGES
- LINKOBJECTS
- MEDIA_TYPES
- TRANSLATIONS_APPLICATIONS
- TRANSLATIONS_IMAGES
- TRANSLATIONS_ITEMS
- TRANSLATIONS_KEYS
- TRANSLATIONS_SECTIONS
- TRANSLATIONS_VALUES
MediaiBox.Agents.Plugins.Mailer.Database.Migrations
- ATTACHMENTS
- MESSAGES
MediaiBox.Cms.Authorization.Database.Migrations
- ADM_GROUPS
- ADM_LINKPERM
- ADM_PREFERENCES
- ADM_RIGHTS
- ADM_USERS
- API_CLIENT_USERS
- API_CLIENTS
- API_IPWHITELIST
- API_REFRESHTOKENS
- AUTH_DATA_TYPES
- AUTH_INSTANCES
- AUTH_PERMISSIONS
- AUTH_PREFERENCE_VALUES
- AUTH_PREFERENCES
- AUTH_PREFERENCES_ENDPOINTS_KEYS
- AUTH_RESOURCE_OWNER_TYPES
- AUTH_USER_GROUP
MediaiBox.ContentCriteria.Database.Migrations
- CONTENT_CRITERIA
- CONTENT_CRITERIA_FILTERS
- CONTENT_CRITERIA_ORDER
- CONTENT_CRITERIA_PREPROCESSED_DATA
- CONTENT_SELECTION
- CONTENT_SELECTION_FILTERS
- CONTENT_SELECTION_HIGHLIGHTS
- CONTENT_SELECTION_ORDER
MediaiBox.Cms.Api.Database.Migrations
- ADM_ENUMTYPES
- ADM_ENUMVALUES
- ADM_FIELDS
- ADM_FILEEXTENSIONS
- ADM_RELATEDS
- SOURCES
MediaiBox.Cms.Api.Database.Migrations.BasicObjects
- FLASHES
- FLASHES_MULTIPLEFILES
- IMAGES
- IMAGES_MULTIPLEFILES
- LINKS
- MMEDIAS
- MMEDIAS_MULTIPLEFILES
- TEXTS
MediaiBox.Cms.FrontEnd.Database.Migrations
- MIB3UX_COMPONENTS
- MIB3UX_TEMPLATES
- MIB3UX_TEMPLATE_COMPONENTS
- MIB3UX_PAGES
- MIB3UX_PAGE_CONFIGURATIONS
- MIB3UX_PAGE_COMPONENT_CONFIGURATIONS
- MIB3UX_MENU
- MIB3UX_NOTIFICATION
- MIB3UX_TSV_REQUESTS
- MIB3UX_ADVANCED_SEARCH_HISTORY
- MIB3UX_STORED_PAGE_STATES
- MIB3UX_PREFERENCES
- MIB3UX_PREFERENCES_VALUES
- MIB3UX_TSV_EDITHISTORY_REQUESTS