Администраторы базы данных

Вопросы и ответы для специалистов по базам данных, которые хотят улучшить свои навыки работы с базами данных и учиться у других в сообществе

2
Применяются ли предложения WHERE в том порядке, в котором они написаны?
Я пытаюсь оптимизировать запрос, который просматривает большую таблицу (37 миллионов строк) и задает вопрос о том, в каком порядке выполняются операции в запросе. select 1 from workdays day where day.date_day >= '2014-10-01' and day.date_day <= '2015-09-30' and day.offer_id in ( select offer.offer_day from offer inner join province on offer.id_province = …

2
Проверьте существование с EXISTS превзойти COUNT! ... нет?
Я часто читал, когда нужно проверять наличие строки, всегда нужно делать с EXISTS, а не с COUNT. Тем не менее, в нескольких недавних сценариях я измерил улучшение производительности при использовании счетчика. Шаблон выглядит так: LEFT JOIN ( SELECT someID , COUNT(*) FROM someTable GROUP BY someID ) AS Alias ON …

5
Как выбрать из ШОУ ТАБЛИЦА СТАТУС результаты
Я хотел бы ограничить строки и столбцы, которые возвращаются из SHOW TABLE STATUS Команда в MySQL 5.1. Есть ли способ получить эту же информацию через SELECTоператор, чтобы я мог манипулировать результатами обычным способом?
36 mysql  select 

5
Почему все еще существует тип данных varchar?
Многие из моих баз данных имеют поля, определенные как varchars. Это не было большой проблемой, так как я живу и работаю в Америке (где единственный язык, который существует - это «американский». Хм ) После работы с базами данных в течение примерно 5 лет я обнаружил, что в конечном итоге у …

6
Каковы различия между «хранимыми процедурами» и «хранимыми функциями»?
Поэтому в комментарии к этому вопросу упоминается, что существует небольшая разница в «хранимых процедурах» и «хранимых функциях» в PostgreSQL. Комментарий ссылается на статью в Википедии, но некоторые из них, кажется, не применяются (например, они могут быть использованы в SELECTутверждении). Сам синтаксис кажется немного запутанным: CREATE FUNCTION emp_stamp() RETURNS trigger AS …

10
восстановить таблицу из .frm и .ibd файла?
Ранее я сохранил копию каталога / var / lib / mysql / ddms («ddms» - это имя схемы). Теперь я установил новый MySQL на только что установленную Ubuntu 10.04.3 LTS, запустив apt-get install mysql-serverверсию 5.1. После того, как я скопировал каталог ddms в / var / lib / mysql, некоторые …
36 mysql  innodb 


1
SQL Server: как отслеживать ход выполнения команды CREATE INDEX?
SQL Server 2014, стандартный выпуск Я читал, что процент_компонента в dm_exec_requests не работает для CREATE INDEX, и на практике, процент_компонента остается на 0. Так что это не помогает. В настоящее время я использую метод ниже, который по крайней мере показывает мне движение (что создание индекса не заблокировано). Но я понятия …

2
В SQL Server, какова цель группировки хранимых процедур?
Одна из самых сложных проблем, с которыми мне приходилось сталкиваться, связана с группами хранимых процедур. Имея хранимую процедуру, usp_DoSomethingAwesomeя могу создать эту процедуру в другой группе, вызвав ее usp_DoSomethingAwesome;2. Я обнаружил это при устранении некоторых проблем с репликацией (Publisher: SQL 2000 Ent., Dist / Sub: 2008 R2 Ent.), Возникающих при …

2
Лучший способ вставить последнюю личность в таблицу
Какой из них является лучшим вариантом для получения значения идентификатора, которое я только что сгенерировал посредством вставки? Каково влияние этих заявлений с точки зрения производительности? SCOPE_IDENTITY() Агрегатная функция MAX() ВЫБЕРИТЕ TOP 1IdentityColumn FROM TableNameORDER BY IdentityColumn DESC

2
IF EXISTS занимает больше времени, чем встроенный оператор select
Когда я запускаю следующий код, это занимает 22,5 минуты и читает 106 миллионов раз. Тем не менее, если я запускаю только внутреннюю инструкцию выбора, она занимает всего 15 секунд и читает 264 Кб. Как примечание, запрос на выборку не возвращает никаких записей. Любая идея, почему это IF EXISTSзаставило бы это …

3
Каков оптимальный тип данных для поля MD5?
Мы разрабатываем систему, которая, как известно, является тяжелой для чтения (порядка десятков тысяч операций чтения в минуту). Существует таблица, namesкоторая служит своего рода центральным реестром. Каждая строка имеет textполе representationи уникальный, keyкоторый является хешем MD5 этого representation. 1 Эта таблица в настоящее время содержит десятки миллионов записей и, как ожидается, …

4
Получение даты последнего изменения таблицы базы данных PostgreSQL
Я пытаюсь узнать, когда моя таблица была изменена, проверив дату изменения файла, как описано в этом ответе . Но результат не всегда правильный. Дата изменения файла обновляется через несколько минут после обновления таблицы. Это правильное поведение? Сохраняет ли PostgreSQL модификации таблиц в некотором кеше, а затем записывает их на жесткий …
35 postgresql 

4
Мне нужно сжать базу данных - я просто освободил много места
Этот вопрос задается здесь в различных формах, но вопрос сводится к: Я знаю, что сокращение базы данных рискованно. В этом случае я удалил столько данных и больше никогда не буду их использовать. Как я могу уменьшить свою базу данных? Какие файлы мне сжимать? Какими должны быть мои соображения при этом? …

1
УДАЛИТЬ ПРОТИВ TRUNCATE
Я пытаюсь получить более глубокое понимание о различиях между DELETEи TRUNCATEкомандами. Мое понимание внутренних органов идет примерно так: DELETE-> ядро ​​базы данных находит и удаляет строку из соответствующих страниц данных и всех страниц индекса, где эта строка введена. Таким образом, чем больше индексов, тем больше времени занимает удаление. TRUNCATE -> …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.