0

I'm trying to migrate the site from a linux+mariadb platform to IIS+MS SQL platform. Could someone please tell me what is the best way to do this?

What I've done so far:

It's a Drupal 8 site so the Migrate and Migrate D2D modules are useless.

0

I recommend giving this tool a try. I have used it in the past (to do MSSQL -> MySQL) to setup a datasource for a legacy migration. In your case, you don't need a migration, you just need the db to be in MSSQL format. This is a great litmus test that might save you hours and hours of time.

https://dbconvert.com/mysql/mssql/

It's reasonably priced and worth a shot. If it works fine, you'll move right along.

  • Thanks for the link! The price is still too much for me, since I am doing this work pro bono. – codehitman Sep 1 '17 at 18:39
  • Having been down this road, I highly suggest trying the demo to see if it solves the problem. If it does, $149 (?) is a drop in the bucket vs all the hours you'd spend otherwise, even if it is for free. – Kevin Sep 1 '17 at 18:41
0

If this module ever gets updated to a Drupal 8 version, it could be an option: https://www.drupal.org/project/dbtng_migrator

It's actually a fairly small module. What the module attempts to do is use the installed modules schema definitions in D7, apply the Schema(s) to the destination DB type and then just grab and insert all the rows from the existing drupal db into the newly created database tables.

The issue queue notes there are some issues with likely dbms vendor specific issues.

EDIT

While the above Drupal tool exists to migrate a database from 1 dbms platform to another, it currently relies on Drupal7. Similar tools exist in other languages as well. A relatively popular tool which should handle most-nearly any database popular commercial database can be found here:

  • Thanks! But as it not available for D8, I cannot use it, nor can I wait long enough for them to migrate. – codehitman Sep 1 '17 at 18:53
  • @codehitman please see my edit. please learn to Google better, because quite simply all I did was spend some time googling around for similar tools, as what you're doing I've had to do myself before. I've not used the Python tool myself but it has hundreds of commits and should work for many dbms vendors. – tenken Sep 2 '17 at 16:29
  • Thanks! I will remember this for the future, and for other non-Drupal related migrations. – codehitman Sep 2 '17 at 17:27
0

So I managed to migrate the DBs in the following manner:

  1. Install MySQL on the target machine.
  2. Load the MariaDB in MySQL. Since it is supposed to be a drop-in replacement, this should go smoothly.
  3. Create an empty database in MS SQL 2012.
  4. Use the SSMA to migrate the DB into MS SQL 2012.
    • The migration will throw a whole bunch of warnings at you. Most of these have to do with truncation due to data-type incompatibility. Don't worry about these. Refer to the schema for the DB that Drupal created when it was installed in MS SQL for reference. For the most part, the data-types would be over compensated, e.g. int becomes bigint, etc. So you don't really need to do anything, but check anyways.
  5. Once the DB has been migrated, change the credentials in settings.php to use the new database.
  6. Clear caches on the newly migrated site and ensure everything works.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.