Baza mssql

wlodekh
Wtajemniczony
Posty: 238
Rejestracja: śr sty 27, 2016 12:37 pm

Re: Baza mssql

Post autor: wlodekh »

Hmmm, z logów wynika, że hasło jest niepoprawne, najpierw to sprawdź. Hasło musi mieć minimum 8 znaków i zawierać znak specjalny i chyba cyfrę. A w ogóle MS SQL 2022 Ci się uruchomił? Usunąłeś MS SQL 2019? Bo oba nie mogą działać jednocześnie na tym samym porcie. Jeśli Ci to nie przeszkadza to zostań na 2019 skoro działa, do Elisoft spokojnie powinien wystarczyć. Pewności nie mam, ale na 2019 chyba nie działają funkcje STRING_AGG i STRING_SPLIT, które w sumie do niczego póki co nie są Ci potrzebne.
DS720+ | RAM Crucial 8GB DDR-2666 SODIMM | WD Red Pro 10TB / SSD WD RED SA500 1TB | Btrfs | 2x NVMe Intel Optane 16GB read SSD cache
Lorek
Początkujący
Posty: 6
Rejestracja: wt kwie 29, 2025 12:09 pm

Re: Baza mssql

Post autor: Lorek »

zostaje na 2019
sprawdzałem hasło wszystko robiłem tak jak na 2019
2022 sie uruchomił i utworzył pliki w docker/mssql ole Elisoft nie chciał się połączyć
wczesniej wspomniałeś o skrypcie do robienia backupu bazy podeślesz go?
wlodekh
Wtajemniczony
Posty: 238
Rejestracja: śr sty 27, 2016 12:37 pm

Re: Baza mssql

Post autor: wlodekh »

Zapomniałem, proszę bardzo:
1. utwórz procedurę wykonawczą za pomocą programu SSMS lub HeidiSQL (polecam ten ostatni, jest darmowy):

Kod: Zaznacz cały

CREATE PROCEDURE mojBackup
AS
BEGIN

BACKUP DATABASE bdFaktury
TO  DISK=N'/var/opt/mssql/data/bdFaktury.bak'
WITH NOFORMAT, NOINIT,  NAME=N'bdFaktury', SKIP, NOREWIND, COMPRESSION, NOUNLOAD,  STATS=10

END
Potem utwórz w harmonogramie zadań, koniecznie jako root:

Kod: Zaznacz cały

#!bin/bash
sudo docker exec -i sql /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P TwojeSilneHasło -d adres_IP_twojego_NAS -q "EXEC mojBackup"
mv /volume1//docker/sql/data/bdFaktury.bak /volume1/docker/sql/data/bdFaktury_$(date +%Y%m%d).bak
mv /volume1/docker/sql/data/bdFaktury_$(date +%Y%m%d).bak /volume1/docker/sql/data/backup
find /volume1/docker/sql/data/backup/bdFaktury_*.bak -mtime +30 -exec rm {} \;
linia 1: wykonuje backup (EXEC mojBackup) - tak naprawdę to wystarczy, poniższe linie to dodatek
linia 2: zmienia nazwę pliku bdFaktury.bak na bdFaktury._data_wykonania_backupu.bak - możesz to wykasować
linia 3: przenosi plik bdFaktury._data_wykonania_backupu.bak z katalogu /data do katalogu /data/backup - najpierw utwórz sobie ten katalog - możesz to wykasować
linia 4: kasuje pliki backupu, które są starsze niż 30 dni - możesz to wykasować.
DS720+ | RAM Crucial 8GB DDR-2666 SODIMM | WD Red Pro 10TB / SSD WD RED SA500 1TB | Btrfs | 2x NVMe Intel Optane 16GB read SSD cache
wlodekh
Wtajemniczony
Posty: 238
Rejestracja: śr sty 27, 2016 12:37 pm

Re: Baza mssql

Post autor: wlodekh »

Po aktualizacji Container Manager do wersji 24.0.2-1543 coś się posypało i nie działa MS SQL 2022, tzn. zainstalować sią da, ale na tym się kończy. Wróciłem do wersji 2019, która działa właściwie bez problemów - minusem jest brak sqlcmd czyli skrypt do backupu bazy też nie zadziała. Obejściem jest uruchomienie SQL Server Agent, który domyślnie jest wyłączony. Instrukcja jak go włączyć z użyciem konsoli:
1. zalogować się do serwera mssql jako root: docker exec -it --user root mssql bash
2. będąc w kontenerze mssql: /opt/mssql/bin/mssql-conf set sqlagent.enabled true
3. wyjść z kontenera: exit
4. zrestartować kontener: docker restart mssql

Uwaga: mssql to nazwa kontenera, jak ktoś ma inną to musi jej użyć.

Po tych zabiegach SQL Server Agent jest aktywny i można dodawać sobie joby.
DS720+ | RAM Crucial 8GB DDR-2666 SODIMM | WD Red Pro 10TB / SSD WD RED SA500 1TB | Btrfs | 2x NVMe Intel Optane 16GB read SSD cache
ODPOWIEDZ

Wróć do „Recenzje, testy, poradniki...”