我附加了一个数据库并尝试将所有者更改为有效的登录名。
我使用了语句:ALTER AUTHORIZATION ON database::my_db_name TO "sa"。数据库属性显示新所有者是“sa”,但是我仍然收到不受限制的 CLR 程序集(0x80FC80F1、0x8013150A)的权限错误,这与程序集信任问题有关。
我改用以下语句解决了这个问题: EXEC sp_changedbowner 'sa'; 更改数据库所有者。
我的问题是,这两种更改数据库所有者的方法有什么区别。它们是等价的吗?我似乎很清楚 sp_changedbowner 正在做更多/正确的事情,而更改授权声明没有做。
如果您有兴趣...在使用 sp_changedbowner 修复问题之前,我尝试过:
我正在尝试通过一些 Mongo 日志进行 grep 以尝试找到我需要优化的缓慢操作。慢查询日志记录是默认的,记录操作超过 100 毫秒。
我认为可以肯定地说,一般来说,搜索 COLLSCANS 会显示需要注意的查询。不太清楚的是,如果 IXSCANS 是我应该搜索的细节。
考虑此处的 MongoDB 文档:
https://docs.mongodb.com/manual/reference/explain-results/#collection-scan-vs-index-use
我的理解是这是一种二元情况,查询是 COLLSCAN 或 IXSCAN。因此,如果我对 IXSCAN 进行 grep,我将查看所有不是 COLLSCANS 的慢查询。这是真的?
这可能包括:
我是一个 dba,拥有一个包含 ~280 个表的数据库,总数据大小为 ~1,5GB。我想调整数据库以使其性能更好。
您如何保持 SQL 数据库的性能?你做了多少索引、统计和碎片整理?
最大的性能杀手/改进是什么,您如何排除故障以找出优化的位置?
编辑: 这是来自 3rd 方 CRM 系统的数据库,所以我无法控制代码。他们添加了很多索引(在合理的地方),但我想知道如何保持服务器的速度。
我确实每晚跑步
EXEC sp_MSforeachtable "dbcc dbreindex('?', '', 90)"
Run Code Online (Sandbox Code Playgroud)
使用维护计划重建索引和(希望)更新统计信息。同一个计划还执行“收缩数据库任务”。
还可以完成哪些其他夜间/每周维护任务或一次性优化?
编辑2:
收集到的提示:
我们有一个使用 MySQL 数据库的在线系统。我们需要将旧的备份数据库(完整表,而不是转储文件)与当前数据库合并。在没有经历任何服务器停机的情况下,你会怎么做?请注意,系统 24/7 全天候在线。可能会出现哪些问题?
谢谢你。
SQL Server 在系统程序文件目录结构中创建其数据库。
我想将数据库文件与系统分区分开。
假设已经创建并填充了数据库:如何将与数据库相关的所有文件移动到单独分区上的不同位置?
database-administration sql-server sql-server-2005 sql-server-2008
我确定有人问过这个问题,但时代变了,SQL 首选项等也变了……我想这个地方将是问这个问题的最佳地点,我相信很多 DBA 都来过这里。
但是我需要知道什么开始。我于今年 12 月毕业,获得了计算机科学学士学位,我参加了两门数据库课程,并为其中一门课程建立了自己的数据库驱动音乐商店(这是基本的,但效果很好,看起来很不错)。
无论如何,我不确定大多数公司使用什么数据库。我知道有 Mysql(但那通常是我不感兴趣的网络内容)、Oracle,然后是 MS-SQL 服务器,以及其他一些。
认证途径似乎使 MS-SQL 服务器更容易(2008 年)和更便宜,Oracle 似乎相当......“想要”就工作而言,但我也看到了我对 MSSQL 的公平份额。还有....差异有那么大吗?就实际编码而言。DBA 的就业市场如何?好的?坏的?见过更好的日子吗?接下来我应该做什么来确保我能找到一份体面的工作,正确的道路是什么?任何答案都是有用的答案!
谢谢
我正在设置一个 MySQL 主数据库,它复制到几个从数据库。
我的问题是监视和/或测试从属数据库是否是最新的最佳实践是什么,并且在出现导致复制停止的错误时会提醒管理员。
我已经搜索了监控工具,但找不到任何合适的工具。
此外,测试从站之间同步的“最佳实践”方法是什么。有没有类似 db 复制的单元测试?
如果我对此事的无知冒犯了任何人,我深表歉意。
我正在尝试使用 roundcube,但它最近刚刚坏了。我不知道这是否是由于最近发生的 MySQL 更新所致,但在 phpMyAdmin 中,如果我尝试查看表,则会收到以下错误:
1286 - Unknown storage engine 'InnoDB'
Run Code Online (Sandbox Code Playgroud)
和
mysql> SHOW ENGINES;
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+--------------------+---------+----------------------------------------------------------------+--------------+------+------------+
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| MyISAM | DEFAULT | MyISAM storage engine | NO | NO | NO |
| BLACKHOLE …Run Code Online (Sandbox Code Playgroud) 我希望以最小的数据和服务中断将数据库“移动”到不同的服务器。这些数据库的大小从 5GB 到 140GB 不等。
我已经看到甚至使用了 SQL Server 的一些各种数据传输工具,但我不确定最佳实践是什么(分离/重新附加、从备份还原、发送事务日志、镜像......)。
我最担心的是这些数据库有很多存储过程、用户权限和各种索引,我不想丢失它们并最终中断服务。
我最近的一个大胆想法是设置一个镜像,然后启动手动故障转移。但是,我宁愿在进行我以前从未做过的事情之前先问一下。
TL;DR 移动 SQL Server 数据库的最佳实践方法有哪些,以最大限度地减少服务中断的威胁。
database-administration database-mirroring sql-server-2005 tsql sql-server-2008
sql-server ×4
database ×3
mysql ×3
innodb ×1
mongodb ×1
oracle ×1
performance ×1
permissions ×1
replication ×1
security ×1
tsql ×1