2008-11-04 2 views
2

У нас есть база данных, к которой у многих людей должен быть доступ. Я ищу способ, который позволит нам получать уведомления, когда в этой базе данных происходит «изменение», поэтому другие стороны могут это знать. Пожалуйста, порекомендуйте.уведомление при изменении происходит в базе данных оракулов

ответ

4

У многих людей НЕ должно быть разрешения ALTER для производственной базы данных - очень немногие люди должны иметь разрешение ALTER для производственной базы данных. На самом деле, вы, вероятно, не должны иметь много людей, имеющих право вносить изменения в тестовые базы данных.

Вы можете рассмотреть вопрос о том, является ли аудит правильным решением - в некоторых СУБД это будет одним из способов обнаружения изменений, но предупреждение будет сложнее (кроме некоторых вариантов темы «grepping audit log»). В Oracle могут быть другие способы.

+0

Это база данных разработки, поэтому нам нужно много людей, чтобы получить к нему доступ. – whiz 2008-11-04 14:10:58

0

ALTER Что?

ALTER SESSION может быть очень распространенной командой (особенно ALTER SESSION SET NLS_DATE_FORMAT или CURRENT_SCHEMA).

Чаще всего вы бы хотели, чтобы отслеживать АЪТЕКИ schema_object, возможно ALTER SYSTEM и ALTER DATABASE

2

Что касается Вашего комментария выше:

Это разработки баз данных, так что нам нужны много людей, чтобы получить доступ к нему. - whizmaven (8 часов назад)

@ Джонатан Леффлера correect: Многие люди могут иметь доступ к нему, но группа людей, которые имеют права DDL (CREATE, DROP, ALTER и т.д.) должны быть очень ограничен.

Лучшим решением для любых таких изменений должно быть сделано локально (либо локально размещенная БД, либо как другая учетная запись пользователя в общей тестовой БД). Только после того, как изменения будут проверены, они должны быть перенесены в полностью разделяемую среду. И этот процесс развертывания/изменения контроля должен обрабатываться более формально.

При минимальном развертывании следует использовать уведомление об изменениях и изменениях этих изменений (новое тестирование, обновления и т. Д.).