ERROR 1286 (42000): Unknown table engine ‘InnoDB’
Posted on 2011-03-21 by admin
Reply
I was getting the error 「ERROR 1286 (42000): Unknown table engine ‘InnoDB’」 when trying to create/alter tables with the InnoDB engine. You can check for this warning by issuing the create or alter statements and then running
show warnings;
in the same mysql client session.
Check if you have InnoDB support enabled:
mysql> show variables like 'have_innodb';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| have_innodb | DISABLED |
+---------------+-------+
1 row in set (0.04 sec)
The problem is that InnoDB is not enabled by default in Debian distributions of my.cnf. To enable it, simply comment the following lines under the [mysqld] section.
#skip-innodb
via
DISABLED和NO是有區別的,DISABLED表示具備該功能,只是沒有啓用(經過啓動參數or配置文件),NO表示完全的不支持的編譯版本。php
ERROR 2003 (HY000): Can’t connect to MySQL server on ’192.168.119.105′ (10061)mysql
報錯緣由linux
* 默認mysql是沒法遠程鏈接,須要修改mysql.user的Host字段,默認Host字段的的數據都是’127.0.0.1′ 只能本地鏈接數據庫,能夠修改成’%',而後flush privileges;這樣就能夠遠程訪問了。若是這由於這個緣由而沒法遠程訪問的錯誤提示是:ERROR 1045 (28000): Access denied for user ‘yushan’@’192.168.119.102′ (using password: YES)。。sql
* 我在linux上安裝了mysql,遠程使用windows鏈接,結果提示:ERROR 2003 (HY000): Can’t connect to MySQL server on ’192.168.119.105′ (10061),找到這一句: bind-address = 127.0.0.1 ,將其註釋掉,而後sudo service mysql restart 重啓動。能夠鏈接了!數據庫
* 若是是windows平臺的mysql服務器沒法被遠程鏈接,能夠禁用windows防火牆(net stop sharedaccess),mysql平臺:/etc/init.d/iptables stopwindows
* 確認/etc/mysql/my.cnf文件skip-networking 選項也被註釋掉。skip-networking的做用是禁用tcp/ip鏈接,完全杜絕mysql遠程鏈接。如今新版本都沒有開啓skip-networking。服務器
執行 mysqldump 時出現找不到某一個 tables 而且中斷執行?session
Error Meaage:tcp
執行 mysqldump 時出現找不到某一個 tables 而且中斷執行ide
#/usr/local/bin/mysqldump xoops > xoops.sql //執行 mysqldump 並出現以下錯誤訊息 mysqldump: Got error: 1146: Table 'xoops.vote_results' doesn't exist when using LOCK TABLES
找了 google 說加上 --skip-lock-tables 試試,也是不行
#/usr/local/bin/mysqldump --skip-lock-tables xoops > xoops.sql Error: Couldn't read status information for table vote_results () mysqldump: Couldn't execute 'show create table `vote_results`': Table 'xoops.vote_results' doesn't exist (1146)
進入 phpmyadmin 管理接口後關於此 vote_results table 的徵狀
1.並無看到 vote_results table 2.但使用指令 show tables; 卻有看到 vote_results table 3.使用 drop table vote_results 又說該 table 不存在沒法 drop 4.至 mysql 目錄下有看到 vote_results.frm 檔案
Ans:
反正這也只是投票的結果而以,就把 vote_results.frm 檔案拿掉,並從新啓動 mysqld 後,就可順利執行 mysqldump 了。