师傅你而 发表于 2019-1-10 13:47:59

mysql设置数据库存储引擎的语句 安装cacti时碰到此问题!

  今天导入数据库时候出现如下错误:
  ERROR 1064 (42000) at line 5: 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 'TYPE=MyISAM' at line 6
  mysql版本为5.5.12,数据库文件为老版本,是数据库存储引擎问题,
  TYPE=MyISAM 和 ENGINE=MyISAM 都是设置数据库存储引擎的语句
  (老版本的MySQL使用TYPE而不是ENGINE(例如,TYPE = MYISAM)。
  MySQL 5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE是首先的用法。
  一般地,ENGINE 选项是不必要的;除非默认已经被改变了,MyISAM是默认存储引擎。
  用vim打开数据库文件,找到MyISAM这行,从下图可以看出这个是5.1版本以前的数据库文件,如果直接往高版本的mysql里面的导入的话就会出现上面那个问题。
http://img1.运维网.com/attachment/201108/123127802.jpg
  解决方法:把数据库文件里的TYPE更改为ENGINE就OK了,
  sed -i 's/TYPE/ENGINE/g' ***.sql

页: [1]
查看完整版本: mysql设置数据库存储引擎的语句 安装cacti时碰到此问题!