maria-discuss team mailing list archive
-
maria-discuss team
-
Mailing list archive
-
Message #02322
Re: MariaDB 10: how to convert Aria table to InnoDB?
I agree with Harald here!
-- Peter
On Mon, Mar 2, 2015 at 2:37 PM, Reindl Harald <h.reindl@xxxxxxxxxxxxx>
wrote:
>
> Am 02.03.2015 um 14:26 schrieb Ian Gilfillan:
>
>> This is probably because strict mode is set. If unset, it should return
>> a warning, not an error. From MariaDB 10.1.2, you can use:
>> SET STATEMENT sql_mode='' FOR ALTER TABLE `systemevents` ENGINE = InnoDB;
>> which will unset strict mode just for that query, otherwise for older
>> versions just set it off and on again for the session to alter.
>>
>
> indeed *but* why does "TRANSACTIONAL=0" don't go away after convert to
> InnoDB?
>
> 'show create table' looks like below and the seems to confuse phpMyAdmin
>
> i am pretty sure that i played around switching bewteen Aria/MyISAM/InnoDB
> with 5.5 multiple times and "sql-mode = STRICT_ALL_TABLES" is enabled on
> all machines for years - strange
>
> CREATE TABLE `systemevents` (
> `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
> `DeviceReportedTime` datetime DEFAULT NULL,
> `FromHost` varchar(30) CHARACTER SET latin1 COLLATE latin1_german1_ci
> NOT NULL,
> `Message` text,
> `SysLogTag` varchar(60) DEFAULT NULL,
> PRIMARY KEY (`ID`),
> KEY `FromHost` (`FromHost`),
> KEY `SysLogTag` (`SysLogTag`),
> KEY `DeviceReportedTime` (`DeviceReportedTime`)
> ) ENGINE=InnoDB AUTO_INCREMENT=698045 DEFAULT CHARSET=utf8 PACK_KEYS=0
> DELAY_KEY_WRITE=1 ROW_FORMAT=COMPRESSED TRANSACTIONAL=0
>
>
> On 02/03/2015 15:09, Reindl Harald wrote:
>>
>>> how do someone convert a Aria table to another engine?
>>> MyISAM and InnoDB results in the same error
>>> ___________________________________________________________
>>>
>>> MariaDB [dbmail]> ALTER TABLE `systemevents` ENGINE = InnoDB;
>>> ERROR 1478 (HY000): Table storage engine 'InnoDB' does not support the
>>> create option 'TRANSACTIONAL=1'
>>>
>>> MariaDB [dbmail]> ALTER TABLE `systemevents` TRANSACTIONAL=0;
>>> Query OK, 0 rows affected (0.03 sec)
>>> Records: 0 Duplicates: 0 Warnings: 0
>>>
>>> MariaDB [dbmail]> ALTER TABLE `systemevents` ENGINE = InnoDB;
>>> ERROR 1478 (HY000): Table storage engine 'InnoDB' does not support the
>>> create option 'TRANSACTIONAL=1'
>>> ___________________________________________________________
>>>
>>> CREATE TABLE `systemevents` (
>>> `ID` int(10) unsigned NOT NULL AUTO_INCREMENT,
>>> `DeviceReportedTime` datetime DEFAULT NULL,
>>> `FromHost` varchar(30) CHARACTER SET latin1 COLLATE
>>> latin1_german1_ci NOT NULL,
>>> `Message` text,
>>> `SysLogTag` varchar(60) DEFAULT NULL,
>>> PRIMARY KEY (`ID`),
>>> KEY `FromHost` (`FromHost`),
>>> KEY `SysLogTag` (`SysLogTag`),
>>> KEY `DeviceReportedTime` (`DeviceReportedTime`)
>>> ) ENGINE=Aria AUTO_INCREMENT=698044 DEFAULT CHARSET=utf8 PACK_KEYS=0
>>> PAGE_CHECKSUM=0 DELAY_KEY_WRITE=1 ROW_FORMAT=PAGE TRANSACTIONAL=0
>>>
>>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~maria-discuss
> Post to : maria-discuss@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~maria-discuss
> More help : https://help.launchpad.net/ListHelp
>
>
References