Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Къде се съхраняват данните в SQL сървър

Featured Replies

Здравейте, въпросът е изключително лаишки, но не знам отговора:

Имам счетоводна програма базирана на такъв сървър. Оказа се, че SQL сървър не може да се качи на Линукс базирано NAS устойство, но това го преглътнах. Другия проблем е, че искам да архивирам базата данни периодично, така че при срив, грешки да мога да възстановявам. Но не знам какво :) Това някаква директория ли е или файл, къде се съхраняват данните? 

Здравей, принципно такава база данни не би трябвало да се срива. Може да се експортва, и при проблем експортнатото да се импортва. Може обикновенно и да се поправя. Дай повече информация за базата, на какво върви в момента...

преди 23 минути, aztam написа:

Здравейте, въпросът е изключително лаишки, но не знам отговора:

Имам счетоводна програма базирана на такъв сървър. Оказа се, че SQL сървър не може да се качи на Линукс базирано NAS устойство, но това го преглътнах. Другия проблем е, че искам да архивирам базата данни периодично, така че при срив, грешки да мога да възстановявам. Но не знам какво :) Това някаква директория ли е или файл, къде се съхраняват данните? 

И базата е MySQL, MSSQL, Oracle RDBMS, PostgreSQL?

преди 18 минути, vstoitsov написа:

Здравей, принципно такава база данни не би трябвало да се срива.

Защо си мислите така? Няма софтуер, който от време на време да не се срива

  • Автор

Сървърът (SQL server 2014) е инсталиран в Program files на обикновен компютър с Win10. За срив не знам, но в един момент с харда може да станат разни работи :)

преди 1 час, aztam написа:

Оказа се, че SQL сървър не може да се качи на Линукс базирано NAS устойство

Някаква информация за хардуера на това NAS устройство ?

преди 1 час, aztam написа:

Другия проблем е, че искам да архивирам базата данни периодично, така че при срив, грешки да мога да възстановявам. Но не знам какво :) Това някаква директория ли е или файл, къде се съхраняват данните? 

Правите ли някаква разлика между база данни, и сървър ?

Как се прави бекъп - примерно тук.

преди 3 часа, aztam написа:

Сървърът (SQL server 2014) е инсталиран в Program files на обикновен компютър с Win10.

Предполагам, че става дума за MSSQL 2014. Ако никога не си се занимавал с MSSQL, по-добре не прави нищо. Не е сложно, но е добре някой специалист да ти покаже. Със съветите от форума може да останеш без базата данни. Обикновенно самата база данни е два файла които са заключени за манипулиране от самия MS SQL Server. По тази причина са и недостъпни за повечето крипто-вируси.

  • Автор

Да, и аз стигнах до извода да не пипам :) а и архивирането на данните е само подзадача. Проблемът който се опитвам да реша и явно трябва да го обсъдя с разработчиците на програмата е как да възстановя архив от предходен месец. Примерно имам данни за 5 фирми в базата, но искам само една от тях да разархивирам в състоянието и от преди месец .

Редактирано от aztam (преглед на промените)

преди 14 минути, aztam написа:

Да, и аз стигнах до извода да не пипам :) а и архивирането на данните е само подзадача. Проблемът който се опитвам да реша и явно трябва да го обсъдя с разработчиците на програмата е как да възстановя архив от предходен месец. Примерно имам данни за 5 фирми в базата, но искам само една от тях да разархивирам в състоянието и от преди месец .

Това, което вие искате е наистина прекалено специфично. И ще е разумно да се свържете с разработчиците. Защото при архивиране се запазва (обикновено) цялата база и така се и възстановява. Разбора се има специфични начини за архивиране на част от информацията, но не ви препоръчвам да навлизате в тези води

преди 20 минути, capnemo написа:

Това, което вие искате е наистина прекалено специфично. И ще е разумно да се свържете с разработчиците. Защото при архивиране се запазва (обикновено) цялата база и така се и възстановява. Разбора се има специфични начини за архивиране на част от информацията, но не ви препоръчвам да навлизате в тези води

Под Windows може и да има възможност за частично архивиране, но при Linux не знам дали е възможно. Така както е описано при автора си е до конкретика. 

 

Операционната система няма никакво значение - базите данни са приложения също както и инструментите за работа с тях. Дали ще имаш възможност за частичен бекъп или не, не зависи от операционната система а от инструмента които се ползва.

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

Процедурата за възстановяване в случая е проста - бекъпът се възстановява във временна база данни. Експортират се данните които трябва да бъдат възстановени и се импортират в целевата база данни. После временната база данни се изтрива.

И разбира се, преди всяка подобна интервенция се прави пълен бекъп - за да няма после сърдити.

преди 1 час, mr mcwolf написа:

Операционната система няма никакво значение - базите данни са приложения също както и инструментите за работа с тях. Дали ще имаш възможност за частичен бекъп или не, не зависи от операционната система а от инструмента които се ползва.

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

Процедурата за възстановяване в случая е проста - бекъпът се възстановява във временна база данни. Експортират се данните които трябва да бъдат възстановени и се импортират в целевата база данни. После временната база данни се изтрива.

И разбира се, преди всяка подобна интервенция се прави пълен бекъп - за да няма после сърдити.

В ИТ няма общи случаи. Всеки случай е специфичен. И в моята практика специфични и частични архиви са често срещано нещо. Но преди да се реши какво ще се архивира се мисли много...

преди 16 часа, techmaniac написа:

Под Windows може и да има възможност за частично архивиране, но при Linux не знам дали е възможно. Така както е описано при автора си е до конкретика. 

 

Под всяка ОС може, зависи от базата и инструмента. Например при Оракъл това (като възможност) е част от стандартния инструмент за експорт

Относно копие на файловете на базата:

1. Run "services.msc" (Изпълняване на команда - win 10 дясно копче на старт бутона и Run - https://www.anoopcnair.com/run-option-windows-10/) - така ще  се отвори прозорец с всички сървиси/процеси

2. Намира се процеса на MS SQL, обикновенно се казва "SQL Server (xxx)", където ххх е името на инстанцията. Може с дясно копче на него да го спреш. !!! ТОВА ЩЕ СПРЕ ДОСТЪПА НА ПРОГРАМАТА ДО ДАННИТЕ !!! (най-добре първо да се спре програмата)

3. След като е спрян сървър-процеса спокойно може да се копира базата данни. Нейните файлове се намират обикновенно в C:\Program Files\ Microsoft SQL Server\MSSQL14.<InstanceID>\  , където InstanceID e същото като ххх при процесите горе. Може да се копира цялата директория, но най-важните файлове са .mdf .ldf. Ако ги няма там, можеш да се потърсят по разширението .mdf  и .ldf. https://docs.microsoft.com/en-us/sql/sql-server/install/file-locations-for-default-and-named-instances-of-sql-server

4. Накрая се старира процеса "SQL Server (xxx)" пак от менюто "services.msc". (Дясно копче на него и старт)

Успех!

преди 1 час, capnemo написа:

В ИТ няма общи случаи. Всеки случай е специфичен. И в моята практика специфични и частични архиви са често срещано нещо. Но преди да се реши какво ще се архивира се мисли много...

И на тоя който е мислил много после всички му споменават роднините. Затова се гледат добрите практики - а те са бекъп на всичко, че не се знае знае ли се. Единствения вариант за частичен бекъп е да пропуснеш временните данни и неща които приемаш, че не са ти важни (като офтопик - порното на машината да речем).

А що се отнася до общите случаи - в ИТ и конкретно в програмирането те са изключително много -  даже книги се пишат по въпроса.

преди 12 минути, mr mcwolf написа:

И на тоя който е мислил много после всички му споменават роднините. Затова се гледат добрите практики - а те са бекъп на всичко, че не се знае знае ли се. Единствения вариант за частичен бекъп е да пропуснеш временните данни и неща които приемаш, че не са ти важни (като офтопик - порното на машината да речем).

А що се отнася до общите случаи - в ИТ и конкретно в програмирането те са изключително много -  даже книги се пишат по въпроса.

E, четете ги тези книги. Но когато натрупате повечко опит вярвам ще осмислите защо по-горе се изразих така. Общите неща са само повърхността, в момента в който се сблъскате с конкретен случай избирате и конкретно решение!

  • Автор
на ‎29‎.‎11‎.‎2017 в 10:01, georgi22 написа:

Относно копие на файловете на базата:

1. Run "services.msc" (Изпълняване на команда - win 10 дясно копче на старт бутона и Run - https://www.anoopcnair.com/run-option-windows-10/) - така ще  се отвори прозорец с всички сървиси/процеси

2. Намира се процеса на MS SQL, обикновенно се казва "SQL Server (xxx)", където ххх е името на инстанцията. Може с дясно копче на него да го спреш. !!! ТОВА ЩЕ СПРЕ ДОСТЪПА НА ПРОГРАМАТА ДО ДАННИТЕ !!! (най-добре първо да се спре програмата)

3. След като е спрян сървър-процеса спокойно може да се копира базата данни. Нейните файлове се намират обикновенно в C:\Program Files\ Microsoft SQL Server\MSSQL14.<InstanceID>\  , където InstanceID e същото като ххх при процесите горе. Може да се копира цялата директория, но най-важните файлове са .mdf .ldf. Ако ги няма там, можеш да се потърсят по разширението .mdf  и .ldf. https://docs.microsoft.com/en-us/sql/sql-server/install/file-locations-for-default-and-named-instances-of-sql-server

4. Накрая се старира процеса "SQL Server (xxx)" пак от менюто "services.msc". (Дясно копче на него и старт)

Успех!

Да Георги, точно така се получава. Благодаря!

Даже тъй като  фрии версията на сървъра не позволява автоматичен бекъп, ще си поиграя да направя процеса в един *.bat файл и да го импортирам в задачите на Уиндоуса.

Намери се решение и на частичния бекъп. Оказа се че счетоводната програма може да копира данни  и от втора база данни (по-горе го е описал mr mcwolf но още не бях напреднал толко че да го разбера : ). Просто правя още един сървър, разархивирам в него примерно базата от преди месец и копирам/тегля на актуалния сървър само частта от базата данни за отделната фирма която ми е нужна .

Отново благодаря!

Редактирано от aztam (преглед на промените)

Архивирана тема

Темата е твърде стара и е архивирана. Не можете да добавяте нови отговори в нея, но винаги можете да публикувате нова тема, в която да продължи дискусията. Регистрирайте се или влезте във вашия профил за да публикувате нова тема.

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    25%
    Дарени 252.69 EUR от нужните 1,000.00 EUR

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.