Deletes files older than 30 days
forfiles /p "C:\sql.arch" /s /m *.* /D -30 /C "cmd /c del /Q /S @path"
openvpn renew server cert
Stop openvpn server
List issued certs in
ls -alh /etc/openvpn/easy-rsa/pki/issued
cd /etc/openvpn/easy-rsa
./easy-rsa renew <cert-name>
copy new cert file from /etc/openvpn/easy-rsa/pki/issued
and
new key file from /etc/openvpn/easy-rsa/pki/private
to folder /etc/openvpn
create /etc/openvpn/auth.txt with key’s password
chmod 600 /etc/openvpn/auth.txt
add line to /etc/openvpn/server.conf
askpass /etc/openvpn/auth.txt
start openvpn server
Migracja bazy danych Płatnik z Access 32 bit na MS SQL Server
Instalujemy po kolei
Microsoft Visual C++ Redistributable
Microsoft OLE DB Driver 19 for SQL Server (x64)
Microsoft SQL Server Migration Assistant (SSMA) for Access
SQL Server Management Studio (SSMS)
Uruchamiamy Migration Assistant (SSMA) for Access
Pomijamy Kreatora
Tools -> Default Project Settings
Zmieniamy “Add timestamp column” na Never
Tools -> Project Settings -> Type Mapping
zmieniamy
date na datetimetext[*..*]
text[*..*] na varchar[*]
memo na varchar[max]
Odpalamy kreatora, wybieramy bazę źródłową <nazwa>.mdb bazę docelową na serwerze MSSQL i wykonujemy konwersję.
Uruchom SQL Server Management Studio (SSMS) i usuń ograniczenia dotyczące zerowej długości wszystkich pól
polecenie poniżej wyświetli kwerendę która to zrobi
SELECT
ctu.TABLE_CATALOG
,ctu.TABLE_SCHEMA
,ctu.TABLE_NAME
,ctu.CONSTRAINT_CATALOG
,ctu.CONSTRAINT_SCHEMA
,ctu.CONSTRAINT_NAME
,cc.CHECK_CLAUSE
,[drop_statement]= 'ALTER TABLE [' + ctu.TABLE_CATALOG + '].['+ ctu.TABLE_SCHEMA+ '].[' + ctu.TABLE_NAME + '] DROP CONSTRAINT [' + ctu.CONSTRAINT_NAME +'];'
FROM [platnik].[INFORMATION_SCHEMA].[CONSTRAINT_TABLE_USAGE] ctu
join [platnik].[INFORMATION_SCHEMA].[CHECK_CONSTRAINTS] cc on ctu.CONSTRAINT_NAME=cc.CONSTRAINT_NAME
Tworzenie konta dla Płatnika
Uruchom SQL Server Management Studio (SSMS)
Utwórz konto dla bazy docelowej
Security -> Logins
Przejdź do User Mapping i ustaw usera jako właściciela bazy
Podłączanie Płatnika
Podłączamy się pod serwer MSSQL używając MSSQL Server Authentication, podając usera i hasło
Jeśli dostaniemy błąd
to zmieniamy sterownik połączenia z MSOLEDBSQL na SQLOLEDB (w moim przypadku musiałem tak zrobić pomimo migracji na MSSQL 2014 Standard)
Program accesspassview do odzyskiwania hasła do pliku mdb
SQL Server Configuration Manager
Version | Path |
---|---|
SQL Server 2022 | C:\Windows\SysWOW64\SQLServerManager16.msc |
SQL Server 2019 | C:\Windows\SysWOW64\SQLServerManager15.msc |
SQL Server 2017 | C:\Windows\SysWOW64\SQLServerManager14.msc |
SQL Server 2016 | C:\Windows\SysWOW64\SQLServerManager13.msc |
SQL Server 2014 (12.x) | C:\Windows\SysWOW64\SQLServerManager12.msc |
SQL Server 2012 (11.x) | C:\Windows\SysWOW64\SQLServerManager11.msc |
openDKIM – no signature data
if you see this message
2023-06-17T21:18:24.773384+02:00 git opendkim[317371]: BADFE5FE6B: [192.168.1.25] [192.168.1.25] not internal 2023-06-17T21:18:24.773568+02:00 git opendkim[317371]: BADFE5FE6B: not authenticated 2023-06-17T21:18:24.774566+02:00 git opendkim[317371]: BADFE5FE6B: no signature data
Add to /etc/postfix/main.cf
milter_connect_macros = j {daemon_name} v {if_name} _ milter_mail_macros="i {mail_addr} {client_addr} {client_name} {auth_type} {auth_authen}"
PHP install extensions
apt -y install php8.2-{apcu,bcmath,bz2,cgi,cli,common,curl,fpm,gd,gmp,igbinary,imagick,imap,intl,ldap,mbstring,mysql,opcache,pgsql,readline,redis,soap,sqlite3,xml,zip}
a2enmod proxy_fcgi setenvif
a2enconf php8.2-fpm
a2disconf php8.1-fpm
systemctl reload apache2
Rsync copy
rsync -azP -e "ssh -p PORT_NUMBER" source destination
KVM Snapshot with only one disk
virsh snapshot-create-as --domain ${VM}
--name "backup-${VM}" \
--atomic \
--disk-only \
--no-metadata \
--diskspec vda,file=${SNAP}/backup-snapshot-${VM} \
--diskspec vdb,snapshot=no
Boot blocks with “Gave up waiting for suspend/resume device”
usually after swap changed
update-initramfs -u