问题标签 [mysql]

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.

0 投票
4 回答
360 浏览

mysql - C语言新手的RDMS?

C语言初学者应该使用什么数据库?

我可以使用 MySQL 吗?

谢谢

0 投票
9 回答
20627 浏览

mysql - 有什么方法可以查看 MySQL 中 ALTER TABLE 语句的进度?

例如,我发出了一个 ALTER TABLE 语句来为 InnoDB 表中的 MEDIUMTEXT 字段创建索引,该表有 134k 行,其中索引的大小为 255 字节,字段中数据的平均大小为 30k。该命令已经运行了 15 分钟左右(并且是唯一在数据库上运行的命令)。我有什么方法可以确定它是否会在接近 5 分钟、5 小时或 5 天后完成?

0 投票
5 回答
2927 浏览

mysql - 我可以在一个查询中更新/从表中选择吗?

我需要在查看页面时选择数据并更新“视图”列有没有办法在一个查询中执行此操作,还是我必须使用不同的查询?

0 投票
3 回答
3583 浏览

sql - mysql 中 INSERT 语句中的计算列

假设我想要一个表来记录其他表中的日期和列数(或者实际上是任何类型的数学/字符串连接等)。

每当我进行插入时,是否可以为我计算计数列?

例如做类似的事情:

并由mysql计算计数。

显然,我可以自己做一个查询来获取计数并插入它,但这会更好。

0 投票
16 回答
595001 浏览

mysql - MySQL 错误 1093 - 无法在 FROM 子句中指定要更新的目标表

我的数据库中有一个story_category包含损坏条目的表。下一个查询返回损坏的条目:

我试图删除它们执行:

但我得到下一个错误:

#1093 - 您不能在 FROM 子句中指定目标表 'story_category' 进行更新

我该如何克服呢?

0 投票
8 回答
19354 浏览

mysql - MySQL Partitioning / Sharding / Splitting - 走哪条路?

我们有一个大约 70 GB 的 InnoDB 数据库,我们预计它会在未来 2 到 3 年内增长到数百 GB。大约 60% 的数据属于单个表。目前数据库运行良好,因为我们有一个 64 GB RAM 的服务器,所以几乎整个数据库都可以放入内存,但我们担心未来数据量会变得相当大。现在我们正在考虑某种拆分表格的方法(尤其是占数据最大部分的表格),我现在想知道,最好的方法是什么。

我目前知道的选项是

  • 使用 5.1 版附带的 MySQL 分区
  • 使用某种封装数据分区的第三方库(如休眠分片)
  • 在我们的应用程序中自己实现它

我们的应用程序建立在 J2EE 和 EJB 2.1 之上(希望有一天我们会切换到 EJB 3)。

你有什么建议?

编辑(2011-02-11):
只是一个更新:目前数据库的大小是 380 GB,我们的“大”表的数据大小是 220 GB,它的索引大小是 36 GB。因此,虽然整个表不再适合内存,但索引却可以。
系统仍然运行良好(仍然在相同的硬件上),我们仍在考虑对数据进行分区。

编辑(2014-06-04):另一个更新:整个数据库的大小是 1.5 TB,我们的“大”表的大小是 1.1 TB。我们将服务器升级到具有 128 GB RAM 的 4 处理器机器(Intel Xeon E7450)。该系统仍然运行良好。我们接下来计划做的是将我们的大表放在单独的数据库服务器上(我们已经在软件中进行了必要的更改),同时升级到具有 256 GB RAM 的新硬件。

这种设置应该持续两年。然后我们要么必须最终开始实施分片解决方案,要么只购买具有 1 TB RAM 的服务器,这应该会让我们持续一段时间。

编辑(2016-01-18):

从那以后,我们将我们的大表放在单独服务器上的它自己的数据库中。目前,这个数据库的大小约为 1.9 TB,另一个数据库(除了“大”表之外的所有表)的大小为 1.1 TB。

当前硬件设置:

  • HP ProLiant DL 580
  • 4 x Intel(R) Xeon(R) CPU E7-4830
  • 256 GB 内存

此设置的性能很好。

0 投票
15 回答
11004 浏览

mysql - 如何在 MySQL 中进行备份?

如何在 MySQL 中进行备份?

我希望有比每“x”小时运行一次 mysqldump 更好的东西。

有没有像 SQL Server 这样的东西,你可以每天进行一次完整备份,然后每小时进行一次增量备份,所以如果你的数据库死了,你可以恢复到最新的备份吗?

像数据库日志这样的东西,只要日志没有死,您就可以恢复到数据库死的确切点?

另外,这些事情如何影响锁定?如果我执行 mysqldump,我希望在线交易会被锁定一段时间。

0 投票
5 回答
1059 浏览

mysql - MySQL UTF/Unicode 迁移技巧

在尝试将 MySQL 表从默认的不区分大小写的瑞典语或 ascii 字符集迁移到 utf-8 时,是否有人有任何提示或问题需要注意?我参与的一些项目正在努力实现更好的国际化,而数据库将成为这一变化的重要组成部分。

在我们更改数据库之前,我们将转换每个站点以使用 UTF-8 字符编码(从最不重要到最重要),以帮助确保所有输入/输出都使用相同的字符集。

谢谢你的帮助

0 投票
5 回答
1061 浏览

php - 如何防止 LAMP 应用程序中的 SQL 注入?

以下是开始对话的几种可能性:

  1. 初始化时转义所有输入。
  2. 转义每个值,最好是在生成 SQL 时。

第一个解决方案不是最理想的,因为如果您想在 SQL 以外的任何地方使用每个值,例如在网页上输出,则需要取消转义每个值。

第二种解决方案更有意义,但手动转义每个值很痛苦。

我知道准备好的语句,但是我发现MySQLi很麻烦。此外,将查询与输入分开也让我感到担忧,因为虽然正确的顺序很重要,但很容易出错,从而将错误的数据写入错误的字段。

0 投票
6 回答
140762 浏览

mysql - 如何列出 MySQL 数据库中的所有触发器?

列出 MySQL 数据库中所有触发器的命令是什么?