9910

          單飛

             :: 首頁(yè) :: 聯(lián)系 :: 聚合  :: 管理
          com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown table engine 'InnoDB'
              at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1026)
              at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:956)
              at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3491)
              at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3423)
              at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1936)
              at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2060)
          原來(lái)我使用了綠色版的mysql,以前能用是因?yàn)閙y.ini文件已經(jīng)存在了。而我重新ghost一下,就沒(méi)有這個(gè)文件了。

          默認(rèn)情況下配置文件可以放在以下目錄中(假定我的mysql安裝在d:\server\mysql下):
          C:\my.ini C:\my.cnf C:\WINDOWS\my.ini C:\WINDOWS\my.cnf D:\server\mysql\my.ini D:\server\mysql\my.cnf

          你可以用mysqld-nt.exe --install,把mysql添加到系統(tǒng)服務(wù)中,然后就可以了。

          另外我發(fā)現(xiàn)原來(lái)可以指定表的engine



          MySQL兩種表存儲(chǔ)結(jié)構(gòu)MyISAM和InnoDB

          MySQL支持的兩種主要表存儲(chǔ) 格式MyISAM,InnoDB,上個(gè)月做個(gè)項(xiàng)目時(shí),先使用了InnoDB,結(jié)果速度特別慢,1秒鐘只能插入10幾條。后來(lái)?yè)Q成MyISAM格式,一秒鐘 插入上萬(wàn)條。當(dāng)時(shí)決定這兩個(gè)表的性能也差別太大了吧。后來(lái)自己推測(cè),不應(yīng)該差別這么慢,估計(jì)是寫(xiě)的插入語(yǔ)句有問(wèn)題,決定做個(gè)測(cè)試:
          測(cè)試環(huán)境:Redhat Linux9,4CPU,內(nèi)存2G,MySQL版本為4.1.6-gamma-standard
          測(cè)試程序:Python+Python-MySQL模塊。
          測(cè)試方案:
          1、MyISAM格式分別測(cè)試,事務(wù)和不用事務(wù)兩種情況:
          2、InnoDB格式分別測(cè)試AutoCommit=1(不用begin transaction和用begin transaction模式),
               AutoCommit=0 (不用begin transaction和用begin transaction模式)四種情況。

          測(cè)試方法為插入10000條記錄。為了測(cè)試不互相影響,單獨(dú)建立了專(zhuān)用的測(cè)試表,建表語(yǔ)句如下:

          1、MyISAM不用事務(wù)表:
          CREATE TABLE `MyISAM_NT` (
            `TableId` int(11) NOT NULL default '0',
            `TableString` varchar(21) NOT NULL default ''
          ) ENGINE=MyISAM;

          2、MyISAM用事務(wù)表:
          CREATE TABLE `MyISAM_TS` (
            `TableId` int(11) NOT NULL default '0',
            `TableString` varchar(21) NOT NULL default ''
          ) ENGINE=MyISAM;

          3、InnoDB關(guān)閉AutoCommit,不用事務(wù):
          CREATE TABLE `INNODB_NA_NB` (
            `TableId` int(11) NOT NULL default '0',
            `TableString` varchar(21) NOT NULL default ''
          ) ENGINE=InnoDB;




          posted on 2009-02-13 09:49 單飛 閱讀(3303) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 虞城县| 黄冈市| 安乡县| 仪陇县| 渭南市| 安多县| 二连浩特市| 正安县| 成安县| 兴文县| 山丹县| 北辰区| 镶黄旗| 西华县| 南召县| 会昌县| 鱼台县| 齐河县| 泰和县| 广东省| 建昌县| 三江| 麻江县| 沅陵县| 本溪市| 余庆县| 崇明县| 娱乐| 河南省| 景泰县| 闽侯县| 略阳县| 神池县| 揭西县| 子长县| 沙河市| 康保县| 明溪县| 方正县| 临清市| 太湖县|