问题标签 [database-administration]

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 投票
3 回答
1518 浏览

mysql - innodb中的列锁定?

我知道这听起来很奇怪,但显然我的一个专栏被锁定了。

第一个即使在几个小时内也不会完成运行,而第二个则顺利完成。唯一的区别是 2 个查询之间的 type_id。

一些背景知识,第一个语句搞砸了,在此之前我不得不手动杀死。

0 投票
2 回答
242 浏览

mysql - 从底部扫描一个mysql表

当我运行 mysql select 语句时,它需要很长时间,因为我之前已经删除了大量的行。

表格有没有办法从底部开始扫描,而不是从顶部开始扫描?

0 投票
2 回答
5861 浏览

mysql - 截断表不会使 mysql 文件变小

我截断了几个大表,但 mysql 文件和数据库似乎保持相同的大小。

truncate table 是否也会从 mysql 中删除数据?

0 投票
2 回答
5641 浏览

mysql - MySQL - 如何将 data_length 转换为实际大小?

我正在尝试优化数据库缓冲区大小,但我发现

显示表状态

相当神秘。我知道数据长度是“165719261184” - 我如何将其转换为实际的兆字节?

0 投票
5 回答
351 浏览

database - 非常大的数据库,非常小的部分大部分是实时检索的

我有一个有趣的数据库问题。我有一个大小为 150GB 的数据库。我的内存缓冲区是 8GB。

我的大部分数据很少被检索,或者主要由后端进程检索。我非常希望保留它们,因为某些功能需要它们。

其中一些(即一些表,以及某些表的一些可识别部分)经常以面向用户的方式使用

我如何确保后者始终被保存在内存中?(这些空间绰绰有余)

更多信息: 我们正在使用 Ruby on rails。数据库是 MYSQL,我们的表是使用 INNODB 存储的。我们将数据分片到 2 个分区。因为我们正在对其进行分片,所以我们使用 JSON blob 存储大部分数据,同时仅索引主键

更新 2 棘手的是,数据实际上同时用于后端进程以及面向用户的功能。但后者的访问频率要低得多

更新 3 这些天有些人评论说 8Gb 是玩具。我同意,但是如果有更聪明、更有效的解决方案,仅仅增加数据库的大小就是纯粹的懒惰

0 投票
2 回答
294 浏览

language-agnostic - 带有脚手架和/或基于 Web 的数据库管理工具的 Web 框架?

我正在为任何关系数据库寻找以任何语言编写的流行和不流行的 Web 应用程序框架和/或数据库管理工具。

简而言之,我正在寻找具有最少编程工作量的 Web 可访问 CRUD 前端

例如:

0 投票
1 回答
2130 浏览

sql-server - 显示通过 CMD 提示符执行 Powershell 脚本的 SQL 2005 作业失败,如果 PS 脚本失败

我有一个 SQL 2005 实例,它运行一个作业,该作业使用 Powershell 脚本通过将“-PrevDay”附加到它来重命名当前 SQL TX 日志备份文件,(如果存在,则删除已命名为“XXX-PrevDay.bak”的备份),然后运行 ​​DB 的完整备份和 TX Log 备份(如果 DB 未处于简单模式)。

SQL Server 代理作业在每个作业步骤中通过 CMD 启动 Powershell 脚本,并且 Powershell 脚本使用“Invoke-SQLCmd”cmdlet 启动 sql 备份。这很好用,除非备份失败,因为 SQL 作业仍然显示为“成功”。这是因为通过 CMD 提示启动 Powershell 脚本的 SQL 作业只关心 Powershell 脚本是否运行……而不关心脚本中的命令是否实际成功或失败。

是否有可能,在 powershell 中使用错误捕获(或任何方法),让 powershell 脚本“失败”运行脚本的 cmd 提示操作......以便 SQL 作业报告失败?

这甚至有意义吗?哈哈

我假设如果我能够使用 SQL 2008,它允许 SQL 作业步骤类型为“Powershell 脚本”(而不是步骤类型必须是操作系统......启动 PS 脚本)这不会不是问题……但是……这不是一个选择。

现在,作业步骤通过 CMD 使用 DBName、Path 和 Servername 的参数运行 powershell 脚本,如下所示:

实际的 Powershell 脚本如下所示:

0 投票
7 回答
23273 浏览

sql-server - 如果作业中的任何步骤失败,通知操作员

我可以(如何)配置 Sql Server 2008 以在作业中的任何步骤失败时通知操作员吗?

我有一个 Sql Server 作业,其中包含几个步骤来更新来自多个不同来源的数据,然后是最后一个步骤,该步骤对数据执行多个计算。所有“数据刷新”步骤都设置为“失败时转到下一步”。一般来说,如果其中一个数据刷新失败,我仍然希望最后一步运行,但我仍然希望收到有关中间失败的通知,所以如果它们持续失败,我可以调查。

0 投票
3 回答
457 浏览

python - Possible to programmatically ALTER multiple MySQL tables?

I have multiple MySQL tables with names of the form "Shard_0", "Shard_1", "Shard_2" ... "Shard_n" All of them have identical table structure. They all live in the same database.

Say I want to add a column to all those tables. Is there a way to do that programmatically?

Something like:

Is it possible to do something like that? If so what language and/or library do I need?

Thanks

0 投票
2 回答
3768 浏览

sql - 在复制中处理标识列的最佳方法

我需要使用中央主服务器、位于每个国家/地区办事处的 4 台办公室服务器以及安装了 sql express 的每台机器之类的场景来实现合并复制。

每台服务器都有 SQL 标准 2008,每台使用 sqlexpress 的客户端都将在分配的办公服务器之间复制数据。

所有的办公室服务器将通过中央服务器相互复制数据

处理身份列的最佳方法是什么?

60% 的表具有标识列。

我担心由于身份列会产生很多冲突。什么是最好的选择??