我有一个在任何意义上都很大的 SQL Server 2005 数据库。它很复杂,它有很多数据(相对而言,但由于缺少 blob,它仍然相当大)并且被大量访问。
需要完成哪些基本管理任务才能确保数据库保持正常运行并且不会(最坏的情况)损坏或以其他方式恶化。
备份是给定的,但是处理事务日志的好方法是什么?您将它们保留多长时间,如果需要,您如何确保使用它们从备份中播放?
还应该进行哪些其他类型的维护?
赏金编辑:我已经留下了最初的问题,但想要一个关于 Postgres 似乎陷入的整个权限崩溃的好答案。
“导入和导出客户端数据库:现场指南”
我今天刚得到这份工作,我们需要使用PostgreSQL。
客户端有两台主机,他们只使用phpPgAdmin访问数据库。没有 SSH。
我们需要导出数据,然后将其导入本地开发机器。
在MySQL的方式上是明智的,我对正确的过程有点迷茫。
有 PostgreSQL >> database >> export
并从那里得到:
我一直在查阅文档,但说实话,我找不到简单的解释,而且目前并不真正关心 db 或 Postgres。我们需要做的就是处理 PHP 站点。
给我一个概要/备忘单/指导我的系统管理syblings。
编辑:
将问题更改为包含导入数据库的 PostgreSQL 权限。
就权限而言,设置新的 PostgreSQL 服务器似乎确实有更多内容。
我专门询问 phpPgAdmin,因为我的服务器不是本地主机并且没有 GUI。
我觉得这是一个权限问题http://pgedit.com/public/sql/acl_admin/index.html
澄清了客户端框上没有 SSH。
仍然找不到关于整个过程的简明文档。在我有更清晰的想法之前,我真的在逃避任务。可能看起来很容易转换为 MySQL db。
我想定期(例如每周)将我的开发数据库与生产数据库中的实际数据同步。我已经有了执行此操作的脚本,并且数据量并不大。
问题是我们通过 VPN 访问客户端网络,因此目前我必须手动连接(使用 cisco vpn 客户端)、运行同步,然后断开连接。
无论如何,是否可以通过脚本来完成此操作,以便我可以按计划安排整个事情并忘记它?
在编程中,通常有特定主题的规范书籍,例如编译器的龙书、C 的 K&R 等。
他们是一本关于现代数据库设计的书,任何希望最终设计数据库的人都必须阅读吗?
我不是在这里寻找一堆建议。我正在寻找的答案是“是的,它是[标题,作者]。” 或者“不,有很多关于数据库的好书,但没有人必须阅读。”
我有一个包含近 100 个表的 MySQL 数据库。
我想在同一台服务器上设置 N 个额外的 MySQL 数据库,每个数据库都在不同的端口上运行。我希望每个附加数据库都具有与原始数据库相同的架构/表结构。
有没有办法自动制作N个原始数据库的副本并将它们设置在N个不同的端口上?
谢谢
在安装使用单个用户与单个数据库(例如 MySQL,但这也适用于其他 RDBMS)对话的 Web 应用程序时,您通常会遇到如下事件序列:
CREATE DATABASE wordpress CHARACTER SET utf8;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'hunter2';
Run Code Online (Sandbox Code Playgroud)
一些指南建议对数据库名称使用不同的用户名,而其他指南则建议使用不同的名称,例如“appuser”代表用户,“app”代表数据库名称。
使用同名有什么明显的技术缺点吗?这样做有没有可能造成混淆的地方?
编辑:我知道这是有问题的安全做法,您应该将您的数据库命名为 fhqwhgads和您的用户flobadob;然而,(a)默默无闻是一个有问题的工具,(b)这是每个 webapp 在他们的文档中给出的例子。
我在 Elasticsearch 5.6.3 日志中经常看到这些。这是我应该扩大规模并添加更多 RAM 的信号吗?或者这只是 ElasticSearch 的正常操作?
[GC (Allocation Failure) [ParNew
Desired survivor size 11141120 bytes, new threshold 15 (max 15)
- age 1: 1761848 bytes, 1761848 total
- age 2: 126464 bytes, 1888312 total
- age 3: 165056 bytes, 2053368 total
- age 4: 50584 bytes, 2103952 total
- age 5: 105120 bytes, 2209072 total
- age 6: 99072 bytes, 2308144 total
- age 7: 2024 bytes, 2310168 total
- age 8: 95632 bytes, 2405800 total
- age …Run Code Online (Sandbox Code Playgroud) database java database-administration database-performance elasticsearch
这是标准的故事,开发人员和管理员之间存在斗争。一种指责说数据库设计和查询很糟糕,而另一些则说这是缺乏硬件和数据量。
所以我问你是我的 IBM x3400,带有 2 个 xenons 2GHz 和 SCSI raid 5 和 4GB 的 RAM 适合 53 GB 的 MSSQL 数据库,表主要详细信息是大约 650 万条详细记录和 200 万条文档标题而其他的则在 100K 左右(例如物品)。
我们在从 SQL 获取数据时经常遇到性能不足的问题,该服务器仅专用于 SQL 服务器,并充当来自其他 SQL 服务器的复制数据的订阅者。
另一个问题是数据库管理员如何规划数据库服务器的硬件大小?是否有一些标准的方法,或者只是经验和感觉?
我已经安装的PostgreSQL9.1和9.2我的Ubuntu的机器上。postgresql 服务启动两个版本:
$ sudo service postgresql start
$ * Starting PostgreSQL 9.1 database server [ OK ]
$ * Starting PostgreSQL 9.2 database server [ OK ]
Run Code Online (Sandbox Code Playgroud)
我只想启动9.2服务器但不卸载9.1,这可能吗?
我有一个连接到名为讨论的 MongoDB 数据库的应用程序。我创建了一个用户
蒙戈外壳:
> use discussions
switched to db discussions
> db.auth("discussions","XXXXXXXXX")
1
> show users
{
"_id" : "discussions.discussions",
"user" : "discussions",
"db" : "discussions",
"roles" : [
{
"role" : "dbOwner",
"db" : "discussions"
}
]
}
Run Code Online (Sandbox Code Playgroud)
所以这是为了确认我在数据库上确实有一个帐户,并且它是 dbOwner。根据文档,它具有 READ、WRITE 等权限。
配置文件启用了“auth = true”属性,并且自更改以来该服务已被退回不止一次。
但是,问题是当我尝试从 shell 外部连接到数据库时,我总是收到错误消息:
mongo discussions -u 'discussions' -p 'XXXXXXXXX'
MongoDB shell version: 2.6.3
connecting to: discussion
2014-08-05T01:00:39.026+0400 Error: 18 { ok: 0.0, errmsg: "auth failed", code: 18 } at src/mongo/shell/db.js:1210
exception: login failed …Run Code Online (Sandbox Code Playgroud) database ×5
postgresql ×2
sql-server ×2
hardware ×1
java ×1
linux ×1
mongodb ×1
mysql ×1
preferences ×1
sql ×1
vpn ×1