_mysql_exceptions.OperationalError: (1214, “The used table type doesn’t support FULLTEXT indexes”)
I am currently installing hubzero-cms-1.2 and successfully executed
# apt-get install -y hubzero-cms-1.2
But when I proceeded to execute
# hzcms install myhubname
I received the following error:
Traceback (most recent call last):
File "/usr/bin/hzcms", line 3555, in
args.func(args)
File "/usr/bin/hzcms", line 984, in installHub
loadSQLSchema(hubname, "localhost", dbName, dbUserName, dbPW, args.dbprefix)
File "/usr/bin/hzcms", line 783, in loadSQLSchema
db.query_rowcount(sqlStatement, None)
File "/usr/lib/python2.6/dist-packages/hubzero/data/db.py", line 171, in query_rowcount
self._execute(cursor, sql, parms)
File "/usr/lib/python2.6/dist-packages/hubzero/data/db.py", line 91, in _execute
return cursor.execute(sql, parms)
File "/usr/lib/python2.6/dist-packages/MySQLdb/cursors.py", line 174, in execute
self.errorhandler(self, exc, value)
File "/usr/lib/python2.6/dist-packages/MySQLdb/connections.py", line 36, in defaulterrorhandler
raise errorclass, errorvalue
_mysql_exceptions.OperationalError: (1214, "The used table type doesn't support FULLTEXT indexes")
As far as I can tell, this is indicating that a particular table in the database is set to the wrong type? Has anyone else experienced this or have any advice?
0 Like 0 Dislike
Leigh Noble @ on
I found the answer to my problem:
In full disclosure, I'm trying to install the hub with MySQL 5.5 (rather than the prescribed MySQL 5.1). I determined that the errors above are because the hub installation tries to set some FULLTEXT indexes in the database. I finally read in the MySQL documentation that "Before MySQL 5.5.5, MyISAM is the default storage engine. (The default was changed to InnoDB in MySQL 5.5.5.)". I also read that "FULLTEXT indexes are supported only for MyISAM tables..."
So, I tried to see where FULLTEXT indexes are used in the installation code and hoped to add an "ENGINE=MYISAM" to the CREATE statements, but I was unsuccessful in figuring out exactly what to change. So, instead, I changed /etc/mysql/my.cnf to add the setting:
[mysqld]
default-storage-engine=myisam
Next, I did the following:
Everything installed without a hitch. Hopefully this long explanation is helpful to someone else out there! Do remember that from now on all tables will be created as MYISAM tables by default...which may not be the best solution for you.
Reply Report abuse
Please login to answer the question.