0

I have MySQL Cluster instance and want one column (BLOB) to be stored on disk instead of memory.
I tried to follow this tutorial: http://mikaelronstrom.blogspot.com/2006/02/how-to-define-table-that-uses-disk.html
And this is output I am getting:

mysql> CREATE DATABASE test1;
Query OK, 1 row affected (0.00 sec)
mysql> use test1;
Database changed
CREATE LOGFILE GROUP lg1
    -> ADD UNDOFILE 'undofile.dat'
    -> INITIAL_SIZE 16M
    -> UNDO_BUFFER_SIZE = 1M
    -> ENGINE = NDB;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '16M
UNDO_BUFFER_SIZE = 1M
ENGINE = NDB' at line 3

Here is syntax for this command: http://dev.mysql.com/doc/refman/5.5/en/create-logfile-group.html
Any ideas why this is not working? I cannot find where I am violating this command syntax.

4
  • Why do you put = for some parameters and not others?
    – Mat
    Aug 18, 2013 at 8:03
  • @Mat That is copied from tutorial I have provided. Even without any = error is still the same. Aug 18, 2013 at 8:07
  • Is the error still there if you convert the 16M to 16*1024*1024 (and the 1M respectively)? Aug 18, 2013 at 11:02
  • Also test what happens if you put equal signs everywhere CREATE LOGFILE GROUP lg1 ADD UNDOFILE 'undofile.dat' INITIAL_SIZE = 16M UNDO_BUFFER_SIZE = 1M ENGINE = NDB; Aug 18, 2013 at 11:13

1 Answer 1

1

CREATE LOGFILE GROUP and CREATE TABLESPACE accept only bytes as unit.

http://bugs.mysql.com/bug.php?id=62858

With MB converted to bytes logfile group was created successfully for me.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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