Перейти к содержанию
СофтФорум - всё о компьютерах и не только

SQL server


veiK

Рекомендуемые сообщения

Здорова

Интересует следующее!

На так называемом серваке , стоит 98 и крутится SQL !

Файл сис ФАТ 32 естестно!

Вообщем столкнулся с тем что БАЗА уже висит около 3 лет! И ее размер уже около 3 ГИГ! Вообщем машинка начинает долго думать!

Понятно что нада проц пошустрее и НТФС!

Но что мне делать в даном случае :) ?!

Как вообщем уменьшить саму базу, оставив данные за весь этот период! Просто чтобы размер стал меньше!

Может тригера повырезать?! :g:

Вообщем есть ли какая то прога для этого ?!

И еще

Мне прислали BACK UP базы но он у меня не подымается! Пока возможности переслать базы - нет! Как мне востановить этот файл и поднять его ?! :(

SQL_error.JPG

post-3100-1154438184_thumb.jpg

Ссылка на комментарий
Поделиться на другие сайты

Здорова!

На так называемом серваке , стоит 98 и крутится SQL !

SQL сервер на 98? или у тебя десктоп едишен?

Вообщем столкнулся с тем что БАЗА уже висит около 3 лет! И ее размер уже около 3 ГИГ! Вообщем машинка начинает долго думать!

А ты лог трансзакций очищал?, переиндексацию делаешь? Модель базы какая?

И еще

Мне прислали BACK UP базы но он у меня не подымается! Пока возможности переслать базы - нет! Как мне востановить этот файл и поднять его ?!

Думаю, никак. Если поврежден md файл то восстановить его сложновато

Изменено пользователем Maikll
Ссылка на комментарий
Поделиться на другие сайты

Здорова

Maikll:

А ты лог трансляций очищал?

переиндексацию делаешь?

Модель базы какая?

:sm(100): а как его чистить ?!

А как ее делать ?!

Что значит модель ?! У меня клиент только ! Вообщем не на SERVER win стоит!

Ссылка на комментарий
Поделиться на другие сайты

ОК, постараюсь объяснить....

Сразу прошу прощения за не совсем профессиональные высказывания в процессе - я ж все-таки не супер-пупер спец в SQL :doh: , просто где-то полгода назад столкнулся с подобной ситуацией, у одного клиента база 1С в SQL-серве выросла до 10(!) гигов. Вот тогда мне один чел и подсказал что делать.

Значит так, первое это регулярная переиндексация базы. Цель - уменьшение времени поиска по запросу.

Выглядит это дело так.( exec _1sp_DBReindex )

normal_Reindex.gif

После этого база действительно начинает шевелиться побыстрее, я например делаю это вручную раз-два в неделю, но знаю людей, у которых это происходит автоматом каждый день

Второе - это размер базы. На самом деле получается что большую часть ее занимает этот журнал транзакций, в нем хранятся все изменения базы после разных операций с ней и в основном он служит как я себе представляю для тех случаев, когда полный бекап базы либо делается редко, либо надо восстанавливать базу не от последнего сохранения, а от "бекап+какие-то операции". Если досстаточно восстановления по последнему бекапу, то этот журнал практически не используется, так у меня во всяком случае.

Собственно урезать эту хрень можно сразу несколькими способами, от простых до радикальных

Простой способ:

backup log (name_base) with NO_LOG можно еще написать "with truncate_only" вместо NO_LOG

truncating-ом (усечением) называется процесс удаления из журнала завершенных транзакций Этот процесс НЕ влияет на физический размер файла журнала.

После truncating-а освободившиеся в журнале место может быть использовано снова либо возвращено оп.системе.

Затем идет изменение физического размера файла журнала (shrinking) Shinking НЕ удаляет из файла журнала завершенные транзакции.

Он лишь возвращает оп.системе то место из журнала, которое было в нем освобождено в результате truncating-а.

Backup Log [DB] with truncate_onlydbcc SHRINKDATABASE (DB)BACKUP DATABASE [DB] TO  DISK = N''C:\BACKUPS\db.bak'' WITH  INIT ,  NOUNLOAD ,  NAME = N''DB backup'', NOSKIP ,  STATS = 10,  NOFORMAT', @database_name = N'DB'

Вот для примера база сжимается, обрезается лог и потом полный бекап.

Более сложный способ связан с полной переделкой базы.

По умолчанию новые базы создаются по модели Full

q.jpg

А если журнал транзакций не критичен, то можно поставить Simple, и тогда он сам будет удаляться переодически.

Там даже такая галочка есть...см. рис.

Сразу оговорюсь, что по идее это никак не повлияет на сохранность данных в базе но полной гарантии кнечено дать не могу...попробуй сперва на копии.

так... пока писал вспомнил, что в Enterprise Manager это тож можно сделать... даже удобнее..блин, а я тут распинаюсь.. ;)

клик по базе-все задачи-shrink database...

обрати внимание на кнопочку files

normal_1.jpg

Если не хочет очищать до 0%, возможно стоит перевести базу в Simple и прогнать еще раз

Ну вот вроде все рассказал...надеюсь понятно получилось. :)

Попробуй поэксперементируй со своей базой ;) Тока бекапить не забудь :D

Изменено пользователем Maikll
Ссылка на комментарий
Поделиться на другие сайты

Здорова

Огого :D Maikll: ну ты и накатал!

Ну вот вроде все рассказал...надеюсь понятно получилось.

Так как я сильно в нем не ковырялся ! ТО буду расспрашивать и надоедать дальше ;)

Значит так, первое это регулярная переиндексация базы. Цель - уменьшение времени поиска по запросу.

Выглядит это дело так.( exec _1sp_DBReindex )

Тоесть мне просто нада вписать эту команду в КВЕРИ АНАЛИЗ и запустить на моей базе ?!

делаю это вручную раз-два в неделю, но знаю людей, у которых это происходит автоматом каждый день

Автомотически ! Всмысле шедулер ?! Или скрипт нада написать ?!

На самом деле получается что большую часть ее занимает этот журнал транзакций, в нем хранятся все изменения базы после разных операций с ней и в основном он служит как я себе представляю для тех случаев, когда полный бекап базы либо делается редко, либо надо восстанавливать базу не от последнего сохранения, а от "бекап+какие-то операции". Если досстаточно восстановления по последнему бекапу, то этот журнал практически не используется, так у меня во всяком случае.

Да мне впринцепе этот журнал тоже не нужен если в нем хранится служебная информация! Так как восновном востанавливаю последний back up! Зачем мне backup + какие то действия ?! :)

Вообщем это что то типа LOG файла , как я понял ?!

Простой способ:

Это опять вписывать в АНАЛИЗАТОРЕ ?!

Затем идет изменение физического размера файла журнала (shrinking) Shinking НЕ удаляет из файла журнала завершенные транзакции.

Он лишь возвращает оп.системе то место из журнала, которое было в нем освобождено в результате truncating-а.

:doh: а по русски :) Шото я не очень понял! ;)

По умолчанию новые базы создаются по модели Full

:) странно , а у меня взде SIMPLE !

клик по базе-все задачи-shrink database...

обрати внимание на кнопочку files

А это что за хитрые манипуляции ?! Поподробнее! ПЛЗ!

Ссылка на комментарий
Поделиться на другие сайты

Тоесть мне просто нада вписать эту команду в КВЕРИ АНАЛИЗ и запустить на моей базе ?!

ДА. как на рисунке

Автомотически ! Всмысле шедулер ?! Или скрипт нада написать ?!

так как реиндекс это встроенная команда, то можно скорее всего и шедулером...просто я пока у себя вручную делаю....ну ленивый я!

Да мне впринцепе этот журнал тоже не нужен если в нем хранится служебная информация! Так как восновном востанавливаю последний back up! Зачем мне backup + какие то действия ?! blink.gif

Вообщем это что то типа LOG файла , как я понял ?!

типа того....

Это опять вписывать в АНАЛИЗАТОРЕ ?!

да, но лучьше и проще будет сделать через менеджер, ...просто я сперва увлекся кодами и забыл про сей чудный инструмент

blink.gif а по русски smile.gif Шото я не очень понял! blush2.gif

ну это описание действий, типа сначала надо пометить записи на удаление а потом уж резать....поэтому и говорю что проще в Enterprise Manager, там все это визуально видно.

странно , а у меня взде SIMPLE !

вроде у меня все по дефолту...а создает Full...впрочем даже симпл не застрахован от раздувания лога транзакций

А это что за хитрые манипуляции ?! Поподробнее! ПЛЗ!

Ну как...на базу кликаешь правой кнопочной мышки, в меню пункт Все задачи, подменю shrink database...

В появившемся окошке вверху написано скока база весу и скока свободно

Дальше ниже настройки, по дефолту стоит оставлять свободно 0% и можно поставить галку Move pages... - это переместит все страницы ближе к началу - "+" к производительности. Дальше ОК, Выполнил - посмотри сколько стала весить база. Там и расписание задать можно, хоть каждый день удаляй.

Ссылка на комментарий
Поделиться на другие сайты

  • 4 месяца спустя...

Извините, но очень нужно. :(

Как в SQL сервере правильно завести новую базу и задать права пользователям :rolleyes: ?

P.S.У меня на работе локалка с доменом. :bye1:

Ссылка на комментарий
Поделиться на другие сайты

Что бы создать новую базу необходимо:

Иметь хотя бы компьютер :blushing:

С установленным на нем SQL-server, открываешь SQL Server Enterprise Manager, дале жмыхаешь на избранный сервер, в проводнике жмыхай на Database, потом в меню под командой "консоль" есть надпись "действие" (кстати он у тя русский? и еще какая версия?), жмыхнешь по ней там будет New Database создаешь короче фсе окошки которые увидишь дальше ето будет разиещение базы на диске и т.п.

Вводишь Name от балды но со смыслом... Передешь на вкладку Data Files, выберешь Location не рекомендуеться создавать там где бывает жарко типа формат комплит, дале идем на фкладку Transaction Log, сдесь млин будет срываться вся инфа о операциях с базой постепенно она наберет вес а как ее снести я не знаю так что для нее выбери укромное но очень большое местечко...

Как дать разрешения юзерам...

В проводнике найди Securiti потом жмыхни на Logins выбери юзера, т.е. жмыхни на нем дважды...на вкладке database acces выбираешь базу и ставишь галочки...

Ссылка на комментарий
Поделиться на другие сайты

И есче...У тебя привязка к доменам стоит для чего?Если ето какие нибудь тестовые базы которые к SQL привязаны, бойся, если слетит сеть будет плохо...

Ссылка на комментарий
Поделиться на другие сайты

А нельзя поподробнее о назначении прав? право редактирования и т.п. :doh:

У меня англицкая версия и опыт близок к нулю :blush2:

Ссылка на комментарий
Поделиться на другие сайты

А нельзя поподробнее о назначении прав? право редактирования и т.п. :doh:

У меня англицкая версия и опыт близок к нулю :blush2:

Ну вот если кто нить подскажет как сюда картинку пристроить млин больше 1 мб я те фсе в комиксах разрисую, я с ним уже два года работаю...

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

А нельзя поподробнее о назначении прав? право редактирования и т.п. :no:

У меня англицкая версия и опыт близок к нулю :)

Saladin хоть и вопрос может уже и решен не все же подскажу вам.В SQL с назначением прав так,заходим в Manager и либо создаем учетные записи ,а если есть то просто смотрим кто в сети,и раздаем под каждой учеткой права,+еще идут настройки ограничений в самих учетках но вам 100% нужны админские права :no:

Ссылка на комментарий
Поделиться на другие сайты

Reasonable

Спасибо за своевременный отзыв :( . Вопрос решен железно: в данном конкретном случае на SQL забито - база создана под BDE, ибо проще :) . В данный момент не парюсь: тупо выгружаю список юзеров с одной базы и импортирую в другую, опять же - ибо проще :) .

По поводу прав: у меня 100% админские права и 5% админского опыта :) . Вот так и живем...

Изменено пользователем Saladin
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...