innodb相关内容

#1025 - 将“./database/#sql-2e0f_1254ba7"重命名为“./database/table"时出错(错误号:150)

所以我试图向我的数据库中的一个表添加主键.现在它有一个这样的主键: PRIMARY KEY (user_id, round_number) 其中 user_id 是外键. 我正在尝试将其更改为: PRIMARY KEY (user_id, round_number, created_at) 我在 phpmyadmin 中通过单击表结构视图中的主键图标来执行此操作. 这是我得到的 ..
发布时间:2022-01-05 17:35:28 数据库

创建 MySQL 触发器的 SQL 语法错误

我尝试创建触发器 CREATE TRIGGER `aster_users2` 之后更新每一行的`aster_users`BEGIN 更新事件设置标志=1,其中id=1;结尾; 但遇到下一个错误 ERROR 1064 (42000):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以获取在第 6 行的“end"附近使用的正确语法 有解决这个问题的建议吗? ..
发布时间:2022-01-01 21:29:26 数据库

MySQL 事务和触发器

我快速浏览了 MySQL 手册,但没有找到有关我的问题的确切信息.这是我的问题:如果我有一个 InnoDB 表 A,其中有两个触发器由“AFTER INSERT ON A"和“AFTER UPDATE ON A"触发.更具体地说,例如:一个触发器定义为: CREATE TRIGGER test_trigger AFTER INSERT ON A每行开始INSERT INTO B SELECT * ..
发布时间:2022-01-01 21:07:27 数据库

我应该在 InnoDB 中一起避免 COUNT 吗?

现在,我正在争论是否使用 COUNT(id) 或“count"列.我听说 InnoDB COUNT 在没有 WHERE 子句的情况下非常慢,因为它需要锁定表并进行全索引扫描.使用 WHERE 子句时是否有相同的行为? 例如,如果我有一个包含 100 万条记录的表.在没有 WHERE 子句的情况下执行 COUNT 将需要使用索引查找 100 万条记录.如果添加 WHERE 子句将符合条件的行数 ..
发布时间:2021-12-30 16:24:06 数据库

MySQL基于外键的第二个自增字段

我多次遇到这个问题,但还没有找到解决这个问题的“MySQL 方法"——我有一个包含用户和报告的数据库强>.每个报告都有一个id,我将其作为报告编号显示给我的用户. 主要的抱怨是用户对为什么报告从他们的系统中丢失感到困惑.实际情况并非如此.实际上,他们意识到了他们的 ID 之间的差距,并假设这些是缺失的报告,而实际上,这只是因为另一个用户填补了这个自动递增的差距. 我需要知道是否有办法在 ..
发布时间:2021-12-26 21:17:16 数据库

我应该总是更喜欢 MySQL InnoDB 而不是 MyISAM?

刚刚有人告诉我 InnoDB 比 MyISAM 好得多.所以当我创建一个表时,我应该总是尝试使用 InnoDB Engine 而不是 MyISAM 吗?还是两者都有很大的好处? 解决方案 MyISAM 是无事务和堆组织的.记录由表中的行偏移量标识,索引将此偏移量存储为行指针. InnoDB 支持事务并且是索引组织的.记录由 PRIMARY KEY 的值标识(或隐藏的内部列,没有定义 ..
发布时间:2021-12-26 21:04:07 数据库

将 base64 编码数据存储为 BLOB 或 TEXT 数据类型

我们有一个 MySQL InnoDB 表,其中包含大约 10 列的小型 base64 编码 javascript 文件和 png(小于 2KB 大小)图像,也采用 base64 编码. 相对而言,插入较少,读取较多,但输出会在 Memcached 实例上缓存几分钟,以避免后续读取. 现在我们正在为这些列使用 BLOB,但我想知道在性能或快照方面切换到 TEXT 数据类型是否有优势正在备 ..
发布时间:2021-12-22 20:06:00 数据库

innoDB 表的 MySQL 全文搜索解决方法

我正在设计一个使用 MySQL 作为其后端数据库的内部 Web 应用程序.数据的完整性至关重要,因此我使用 innoDB 引擎来实现其外键约束功能. 我想对一种类型的记录进行全文搜索,而 innoDB 表本身并不支持这种类型的记录.我不愿意转向 MyISAM 表,因为它们缺乏外键支持,而且它们的锁定是按表而不是按行进行的. 创建我需要使用 MyISAM 引擎搜索的记录的镜像表并将其用于 ..
发布时间:2021-12-20 14:05:19 数据库

MySQL - 如何按相关性排序?INNODB 表

我在一个名为“cards"的 INNODB 表中有大约 20,000 行,所以 FULLTEXT 不是一个选项. 请考虑这张表: id |姓名 |描述----------------------------------------------------------1 约翰史密斯只是一些家伙2 Ted Johnson 另一个家伙3 乔纳森·托德 这家伙也是4 苏珊史密斯 她也是5 山姆·约 ..
发布时间:2021-12-20 13:58:05 数据库

如何改进 INSERT INTO ... SELECT 锁定行为

在我们的生产数据库中,我们每小时运行以下伪代码 SQL 批处理查询: INSERT INTO TemporaryTable(从 HighContentiousTableInInnoDb 中选择当 allKindsOfComplexConditions 为真时) 现在这个查询本身不需要很快,但我注意到它正在锁定 HighlyContentiousTableInInnoDb,即使它只是从中读取.这 ..
发布时间:2021-12-19 14:53:49 数据库

Magento 安装抱怨 InnoDB 可用时丢失

在安装过程中,Magento 产生以下错误: 数据库服务器不支持 InnoDB 存储引擎. 我已经修复了 Magento 的所有依赖项,并在命令行上使用 SHOW ENGINES 对 MySQL 进行了双重检查,并且肯定有 InnoDB 可用(也是默认存储引擎). 这不是访问 MySQL 配置的问题,其他人在安装时可能已经看到. 注意:这是在 Mac Pro 上运行的(对我 ..
发布时间:2021-12-19 08:42:51 PHP

使用 Laravel 队列时如何避免作业数据库表锁定问题?

我使用的是 Laravel 5.1. 队列用于多个系统之间的数据获取/同步. 我使用数据库驱动,3个“artisan queue:work --daemon"进程一直在运行. 作业由系统用户和调度程序 (cron) 分派.三个队列用于确定作业的优先级. 一切似乎都很好 - 工作表充满了记录,系统会处理它们并删除已完成的记录. 然而,一段时间后锁定问题开始干扰: ..
发布时间:2021-12-18 21:49:30 数据库

带有关系 innoDB 的递归 MySQL 查询

我有一个类似(简化)的表结构: 内容 - id_content- my_string1- ... content_has_content - id_content- id_subcontent topic_has_content - id_topic- id_content 任何主题都可以有多个“内容",任何“内容"都可以有多个“子内容"(内容实例).使用给定的 id_to ..
发布时间:2021-12-16 08:58:48 数据库

Mysql 服务无法启动,InnoDB init 函数错误

今晚似乎不知从何而来,我的 wordpress 网站宕机了,我已经将其追溯到 mysql 的问题.Mysql 不会在服务器上启动,因为它一直失败. 这是我从日志中得到的: 140226 08:54:11 mysqld_safe mysqld 从 pid 文件/var/run/mysqld/mysqld.pid 结束140226 08:58:20 mysqld_safe 使用/var/lib ..
发布时间:2021-12-05 13:21:31 数据库

我如何处理 Django 中的这种竞争条件?

此代码应该获取或创建一个对象,并在必要时更新它.该代码在网站上用于生产. 在某些情况下 - 当数据库繁忙时 - 它会抛出异常“DoesNotExist:MyObj 匹配查询不存在". # 型号:类 MyObj(models.Model):东西 = 模型.ForeignKey(东西)owner = models.ForeignKey(用户)状态 = 模型.BooleanField()元类:u ..
发布时间:2021-12-02 19:20:06 其他开发

自动递增 - 每年自动重置

MySQL/InnoDB 就我而言,我的收据应按年计算;1/2015、2/2015 ... 556/2015 等等.明年来的时候,柜台要重新从1开始,收据应该算为1/2016, 2/2016 ... 如何定义每年自动重置的 auto_increment 字段? RCID |RCNO |年 |...======+======+========+====200 |1 |2015 |201 ..
发布时间:2021-11-30 20:47:39 数据库

在 MySQL 中定义具有自动增量的复合键

场景: 我有一个引用两个外键的表,对于这些外键的每个唯一组合,都有自己的 auto_increment 列.我需要实现一个复合键,以帮助使用这三者的组合(一个外键和一个 auto_increment 列,以及另一个具有非唯一值的列)将行标识为唯一的 表格: 创建表`issue_log`(`sr_no` INT NOT NULL AUTO_INCREMENT ,`app_id` INT ..
发布时间:2021-11-30 20:40:29 数据库

如何查看 MySQL 内部 innodb 临时表的大小

我看到了大量的内部正在写入临时磁盘表.我可以通过 SHOW GLOBAL STATUS where Variable_name like 'Created_tmp_disk_tables' 查看计数. 我知道我可以更新 max_heap_table_size 和 tmp_table_size 来帮助防止这种情况发生,但是如果不知道写入磁盘的表的大小,就很难知道要使用哪些值用. 有人知道 ..
发布时间:2021-11-27 08:58:39 数据库