4

From my reading of things setting up MariaDB and activating TokuDB on a 64 bit Debian/Ubuntu server is a relatively easy task.

I currently use mySQL and have a great deal of (well written, I think) SQL in PHP that uses PDO to access the database. I gather that there are no syntactical differences between the flavors of SQL being used by MariaDB and mySQL. My questions

  1. Does this then mean that I can simply export my current mySQL DB, replace all references to InnoDB with ExtraDB, run the script on the new MariaDB server and be up and running?
  2. The other potential issue is phpMyAdmin. Does "plugin replacement" mean that I can pretty much continue to use phpMyAdmin with the MariaDB server?

Finally, are there any other gotchas here that one must be aware of prior to making such a switch? I'd much appreciate any help.

tmcallaghan
  • 1,292
  • 2
  • 10
  • 20
DroidOS
  • 8,530
  • 16
  • 99
  • 171
  • 1
    We "migrated" a Php application using (Propel ORM) to MariaDB and saw no ill effects, everything has been working exactly the same, we had to make no configuration changes anywhere. phpMyAdmin worked just the same as well. This has been my experience so far. – ellipse-of-uncertainty Jan 10 '14 at 13:55
  • One thing that changed for me (but probably that is also the case for newer mysql distributions) that networking was turned of by default, so only access to socket was possible. – t.niese Jan 10 '14 at 14:02

2 Answers2

4

You can do a mysqldump on your current MySQL database and use the output to load all your data into MariaDB. One goal of MariaDB is to be fully compatible with MySQL (for now at least) so you can usually shutdown your existing MySQL server, copy the data folder over to your MariaDB install, and start it up.

Given the compatibility goal of MariaDB, there is no need to switch your engine=innodb statements to anything else, it understands that innodb=xtradb.

Lastly, if you want to begin converting your tables to the TokuDB storage engine, check out the Quick Start Guide for tips.

tmcallaghan
  • 1,292
  • 2
  • 10
  • 20
  • Thanks. Are there any general rules regarding when it is NOT a good idea to use the TokuDB engine? My understanding is that for tables that are mostly used for reads and few/no writes MyISAM is a better choice than InnoDB. Perhaps there are situations when TokuDB is better avoided? – DroidOS Jan 10 '14 at 14:09
  • 1
    Sure. TokuDB does not support foreign key constraints (as InnoDB does). Also, if your workload fits in-memory then InnoDB is usually a better performer (and it's likely that compression and online schema changes are not important to you). – tmcallaghan Jan 11 '14 at 15:49
0

Despite assert above MariaDB is not fully compatible with MySQL, for example most useful in practice parameter of MySQL max_buffer_length is not supported in MariaDB. In opposite side most useful future in practice is COMMENT option inside SQL code, this option is not supported by MySQL.

Viacheslav
  • 1,054
  • 12
  • 16