kreuzberger
Goto Top

Veeam B+R 12 und ein wechsel der SQL nach PostgreSQL

Hallo Digitalfreunde,

ich hab da
einen Windows Server 2022 (Testweise, kein ActiveDirectory, Hostename „FS21"),
darauf Veeam B&R 12 Community Edition (upggegradet von 9.5 in allen Schritten)
zudem PostgreSQL 15.6.

Ich wollte nun ausprobieren, wie das Umstellen von Microsoft SQL nach PostgreSQL geht.

Das mache ich nach dieser Anleitung:
https://www.veeam.com/blog/switch-sql-server-postgresql-veeam.html

Leider ist die Stelle, wo man die PostgreSQL-Einstellungen für Veeam vornehmen muss etwas spartanisch.

Aber ich habe im pgAdmin 4 die LoginRoles aufrufen können und dort neu angelegt wie hier zu sehen:
10

Nun habe ich die Anleitung weiter angewendet und will das Umschalten von Microsoft SQL nach PostgreSQL durchführen, indem ich die Backup-Config aus Veeam exportiere, um sie dann migriert wieder importieren zu können.

005
006


Leider stosse ich da auf ein Problem, ich vermute mal, es sind die Zugangsdaten/Credentials von Veeam zu PostgreSQL, die hier nicht stimmen.


Kann mir jemand verraten, wo ich da was falsch mache bzw. worauf ich genauestens achten muss?

Kreuzberger

Content-ID: 71309209016

Url: https://administrator.de/contentid/71309209016

Ausgedruckt am: 21.11.2024 um 17:11 Uhr

kadde71
kadde71 20.03.2024 um 19:08:20 Uhr
Goto Top
Moinsen,
im Installationspfad von PostgreSQL liegt ein pg_hba.conf Datei, welche den Zugriff/Berechtigung auf DB verwaltet. i.d.R wäre der Pfad C:\Program Files\PostgreSQL\15\data

der relvante Teil der pg_hab.conf wäre dies

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only 
local   all             all                                     sspi map=veeam
# IPv4 local connections:
host    all             all             127.0.0.1/32            sspi map=veeam
# IPv6 local connections:
host    all             all             ::1/128                 sspi map=veeam
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     sspi map=veeam
host    replication     all             127.0.0.1/32            sspi map=veeam
host    replication     all             ::1/128                 sspi map=veeam
unter #IPv6 gibst Du dann die IP an, die Zugriff erhalten soll
chgorges
chgorges 20.03.2024 um 23:37:16 Uhr
Goto Top
Ich frage mich, wieso du manuell etwas umstellen musst, bzw. willst, das Setup macht das alles automatisch für dich.

vG
kreuzberger
kreuzberger 21.03.2024 um 00:38:59 Uhr
Goto Top
@kadde71

Danke für den tollen Tip.

Bei mir läuft das alles lokal auf einem Rechner, der derzeit noch DHCP eingestellt ist. Sollte es ggf. daran liegen, dass er keine feste IP hat?

@chgorges

Danke für den Tip. Es ist eben so wie es ist.

Kreuzberger
kadde71
kadde71 21.03.2024 um 08:24:19 Uhr
Goto Top
poste doch mal bitte Deine pg_hba.conf.
kreuzberger
kreuzberger 21.03.2024 um 11:28:23 Uhr
Goto Top
@kadde71

aber bitte gerne doch:

# PostgreSQL Client Authentication Configuration File
# ===================================================
#
# Refer to the "Client Authentication" section in the PostgreSQL  
# documentation for a complete description of this file.  A short
# synopsis follows.
#
# This file controls: which hosts are allowed to connect, how clients
# are authenticated, which PostgreSQL user names they can use, which
# databases they can access.  Records take one of these forms:
#
# local         DATABASE  USER  METHOD  [OPTIONS]
# host          DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
# hostssl       DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
# hostnossl     DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
# hostgssenc    DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
# hostnogssenc  DATABASE  USER  ADDRESS  METHOD  [OPTIONS]
#
# (The uppercase items must be replaced by actual values.)
#
# The first field is the connection type:
# - "local" is a Unix-domain socket  
# - "host" is a TCP/IP socket (encrypted or not)  
# - "hostssl" is a TCP/IP socket that is SSL-encrypted  
# - "hostnossl" is a TCP/IP socket that is not SSL-encrypted  
# - "hostgssenc" is a TCP/IP socket that is GSSAPI-encrypted  
# - "hostnogssenc" is a TCP/IP socket that is not GSSAPI-encrypted  
#
# DATABASE can be "all", "sameuser", "samerole", "replication", a  
# database name, or a comma-separated list thereof. The "all"  
# keyword does not match "replication". Access to replication  
# must be enabled in a separate record (see example below).
#
# USER can be "all", a user name, a group name prefixed with "+", or a  
# comma-separated list thereof.  In both the DATABASE and USER fields
# you can also write a file name prefixed with "@" to include names  
# from a separate file.
#
# ADDRESS specifies the set of hosts the record matches.  It can be a
# host name, or it is made up of an IP address and a CIDR mask that is
# an integer (between 0 and 32 (IPv4) or 128 (IPv6) inclusive) that
# specifies the number of significant bits in the mask.  A host name
# that starts with a dot (.) matches a suffix of the actual host name.
# Alternatively, you can write an IP address and netmask in separate
# columns to specify the set of hosts.  Instead of a CIDR-address, you
# can write "samehost" to match any of the server's own IP addresses,  
# or "samenet" to match any address in any subnet that the server is  
# directly connected to.
#
# METHOD can be "trust", "reject", "md5", "password", "scram-sha-256",  
# "gss", "sspi", "ident", "peer", "pam", "ldap", "radius" or "cert".  
# Note that "password" sends passwords in clear text; "md5" or  
# "scram-sha-256" are preferred since they send encrypted passwords.  
#
# OPTIONS are a set of options for the authentication in the format
# NAME=VALUE.  The available options depend on the different
# authentication methods -- refer to the "Client Authentication"  
# section in the documentation for a list of which options are
# available for which authentication methods.
#
# Database and user names containing spaces, commas, quotes and other
# special characters must be quoted.  Quoting one of the keywords
# "all", "sameuser", "samerole" or "replication" makes the name lose  
# its special character, and just match a database or username with
# that name.
#
# This file is read on server startup and when the server receives a
# SIGHUP signal.  If you edit the file on a running system, you have to
# SIGHUP the server for the changes to take effect, run "pg_ctl reload",  
# or execute "SELECT pg_reload_conf()".  
#
# Put your actual configuration here
# ----------------------------------
#
# If you want to allow non-local connections, you need to add more
# "host" records.  In that case you will also need to make PostgreSQL  
# listen on a non-local interface via the listen_addresses
# configuration parameter, or via the -i or -h command line switches.



# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only  
local   all             all                                     scram-sha-256
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     scram-sha-256
host    replication     all             127.0.0.1/32            scram-sha-256
host    replication     all             ::1/128                 scram-sha-256
kadde71
kadde71 21.03.2024 um 11:51:29 Uhr
Goto Top
da soltte dan die IP rein, die ping FS12 auflöst, v6 oder v4
https://community.veeam.com/discussion-boards-66/v12-migrate-ms-sql-to-p ...

nach einer Änderung muss der Dienst des PostgreSQL Servers neu gestartet werden.
DHCP - eine Frage wie lange das lease gültig ist
Oder die hosts Datei anpassen dann brauchst Du die PostgeSQL config nicht ändern

127.0.0.1       FS21
::1             FS21
kreuzberger
kreuzberger 21.03.2024 um 12:41:03 Uhr
Goto Top
@kadde71

ok, dann wäre es also für die Verwendung von PostgreSQL und Veeam B&R 12 grundsätzlich sinnvoll, eine feste IP-Adresse für den Server zu verwenden, damit die sich auch wenn es der selbe Host ist sich gegenseitig auch finden!?

Wie / wo sollte ich denn die pg_hba.conf anpassen, wenn ich eine feste IP (192.168.20.30) für den FS21 benutze?

IP6 ist bei mir intern aus.

Grüße

Kreuzberger
kadde71
kadde71 21.03.2024 um 12:49:34 Uhr
Goto Top
in dem Fall
# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only   
local   all             all                                     scram-sha-256
# IPv4 local connections:
host    all             all             127.0.0.1/32            scram-sha-256
host    all             all             192.168.20.30/32        scram-sha-256
# IPv6 local connections:
host    all             all             ::1/128                 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     scram-sha-256
host    replication     all             127.0.0.1/32            scram-sha-256
host    replication     all             ::1/128                 scram-sha-256
kreuzberger
Lösung kreuzberger 14.05.2024 um 10:37:53 Uhr
Goto Top
@all DANKE

Hurraaaaa, mein Backup geht wieder.

Was war das Problem?
Die SQL Datenbank auf dem Server 2012 war mit 10GB voll gelaufen und es ging nix mehr. Da das System veraltet und ein „weiter so“ nicht mehr angebracht war eine Erneuerung anstehend. Jedoch aber mit viel Recherche, damit man nicht wieder das gleiche Problem irgendwann hat.


Was hab ich gemacht?
Image-Backup vom System
Server mit Server 2022 Eval. Standard neu aufgesetzt.
(Auf MS SQL verzichtet, mit zu installieren)
Alternative SQL mit PostgreSQL 15 installiert nach Anleitung:
https://troublenet.de/veeam-migration-der-configuration-database-nach-po ...
(Die Anleitung ist wesentlich besser als die bei Veeam im Forum.)
Veeam 12 (Community Edition) installiert
(Es wurde sogleich erkannt, dass PostgreSQL zur Verfügung steht)
Veeam mit dem SAS Controller und SAS LTO Tape Strammer verbunden (Treiberinstallation)
Veeam Backup-Jobs neu einrichten.
Backup

Ich habe darauf verzichtet, die alte Config von Veeam zu nutzen, da die Backups eh alle neu angefertigt werden müssen. Die alten Backup-Daten waren damit obsolet.

Anmerkung: Es ist ja der Server 20222 Eval., der nur 180 Tage geht. Das kann man ja verlängern. Ist die Eval.-Zeit weg kann man das System ja komplett neu aufsetzen. Dabei dann aber eben doch die Config-Datenbank sichern und nach Neuinstallation wiederherstellen.

Kreuzberger