问题标签 [innodb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 从 MyISAM 更改为 InnoDB 时是否有任何陷阱/需要知道的事情
我的一个项目在 MySQL 中使用了 MyISAM 引擎,但我正在考虑将其更改为 InnoDB,因为我需要在这里和那里的事务支持。
- 在执行此操作之前,我应该查看或考虑什么?
- 我可以只更改引擎,还是应该为此准备数据?
mysql - 如何修复 InnoDB 表?
昨晚(显然)我们的 Solaris MySQL 数据库引擎执行不佳。至少有一些 InnoDB 表已损坏,事务日志中出现时间戳乱序错误,以及有关索引已损坏的特定错误。
我们知道可用于 MyISAM 表修复的工具,但找不到任何适用于 InnoDB 的工具。
旁注:尝试表优化(在我尝试重建损坏的索引时)会导致数据库服务器崩溃。
mysql - MySQL MyISAM 和 innoDB 内存使用情况
有谁知道 MyISAM 和 innoDB 使用了多少内存?处理小表与处理大表(最大 32 GB)时,它们的内存使用情况如何比较?
我知道 innoDB 比 MyISAM 更重,但还有多少呢?
任何帮助,将不胜感激。
谢谢,jb
mysql - MySql:MyISAM 与 Inno DB!
MySql 中的 MyISAM 和 Inno DB 类型有什么区别?
mysql - Mysql InnoDB 操作系统错误号 32 在 Windows 上的文件操作中
从几天前开始,我的 Windows 机器上的 MySQL 服务器没有成功关闭自己。我在 MySQL 错误日志中发现了这些行的多个实例:
我有很多可用空间,服务器安装了几个月,版本是Windows XP SP3上的5.1.22-rc-community-log,并且我只使用一个Windows帐户来创建和执行MySQL服务。
按照 Greg 的回答,我发现ProcessExplorer
有另一个 MySQL 服务以不同的名称运行。我杀了它,一切都运行良好。
mysql - 设置 innodb_log_file_size 会使 MySQL 崩溃
所以,我希望能够将最大日志文件大小设置为 64M,但是在innodb_log_file_size=64M
MySQL 启动后这样做可以正常工作,但似乎没有任何工作正常。
编辑:我的意思是完全没有。设置其他 InnoDB 变量不会导致任何问题。
我应该如何解决这个问题?
mysql - INT 和 VARCHAR 主键之间是否存在真正的性能差异?
在 MySQL 中使用 INT 与 VARCHAR 作为主键之间是否存在可测量的性能差异?我想使用 VARCHAR 作为参考列表的主键(想想美国各州、国家/地区代码),并且同事不会将 INT AUTO_INCREMENT 作为所有表的主键。
我的论点,正如这里详述的那样,是 INT 和 VARCHAR 之间的性能差异可以忽略不计,因为每个 INT 外键引用都需要一个 JOIN 来理解引用,一个 VARCHAR 键将直接呈现信息。
那么,是否有人对这个特定的用例以及与之相关的性能问题有经验?
mysql - MySQL(InnoDB):需要删除列,以及伴随的外键约束和索引
这是我的桌子:
我想删除 column photo_id
,这可能还需要删除外键约束和索引。
问题是当我尝试删除列时出现错误:
...当我尝试删除索引(与上面相同)时,以及当我尝试删除外键约束时:
我应该按照什么顺序进行所有这些操作?我应该使用什么精确的命令?
mysql - MySQL 为什么要在 InnoDB 表中添加注释?
使用 phpMyAdmin 或 MySQL GUI 工具时,每当我创建 InnoDB 表时,它都会向表中添加如下注释:
免费 InnoDB:9216 kB
这是什么意思?它是干什么用的?
mysql - 外键在 MySQL 中不起作用:为什么我可以插入一个不在外列中的值?
我在 MySQL 中创建了一个表:
这创建了我想要的表(尽管“DESCRIBE actions;”命令显示外键是 MUL 类型的键,我不确定这意味着什么)。但是,当我尝试输入 questions 或 users 表中不存在的 Q_id 或 U_id 时,MySQL 仍然允许这些值。
我做错了什么?如何防止具有外键的表接受无效数据?
更新 1
如果我添加TYPE=InnoDB
到最后,我会收到一个错误:
错误 1005 (HY000): 无法创建表 './quotes/actions.frm' (errno: 150)
为什么会发生这种情况?
更新 2
有人告诉我,用功能外键强制数据完整性很重要,而且 InnoDB 不应该与 MySQL 一起使用。你有什么建议吗?