Amazon Best VPN GoSearch

Icône de favori OnWorks

pg_basebackup - En ligne dans le Cloud

Exécutez pg_basebackup dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande pg_basebackup qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


pg_basebackup - effectue une sauvegarde de base d'un cluster PostgreSQL

SYNOPSIS


pg_basebackup [option...]

DESCRIPTION


pg_basebackup est utilisé pour effectuer des sauvegardes de base d'un cluster de bases de données PostgreSQL en cours d'exécution. Ces
sont prises sans affecter les autres clients de la base de données, et peuvent être utilisées à la fois pour
restauration à un moment précis (voir Section 24.3, « Archivage continu et restauration à un moment donné
(PITR)”, dans la documentation) et comme point de départ d'un log shipping ou streaming
serveurs de secours de réplication (consultez la Section 25.2, « Serveurs de secours d'envoi de journaux », dans le
Documentation).

pg_basebackup fait une copie binaire des fichiers du cluster de base de données, tout en s'assurant que le
le système est mis en et hors du mode de sauvegarde automatiquement. Des sauvegardes sont toujours effectuées sur le
cluster de base de données entier ; il n'est pas possible de sauvegarder des bases de données individuelles ou une base de données
objets. Pour les sauvegardes de bases de données individuelles, un outil tel que pg_dump(1) doit être utilisé.

La sauvegarde est effectuée via une connexion PostgreSQL régulière et utilise la réplication
protocole. La connexion doit se faire avec un superutilisateur ou un utilisateur ayant REPLICATION
permissions (voir Section 20.2, « Attributs de rôle », dans la documentation) et pg_hba.conf
doit explicitement autoriser la connexion de réplication. Le serveur doit également être configuré avec
max_wal_senders est suffisamment élevé pour laisser au moins une session disponible pour la sauvegarde.

Il peut y avoir plusieurs pg_basebackupfonctionne en même temps, mais c'est mieux d'un
du point de vue des performances pour ne prendre qu'une seule sauvegarde, et copier le résultat.

pg_basebackup peut faire une sauvegarde de base non seulement à partir du maître mais aussi du standby. À
faire une sauvegarde à partir du standby, configurer le standby pour qu'il accepte la réplication
connexions (c'est-à-dire définir max_wal_senders et hot_standby, et configurer basé sur l'hôte
authentification). Vous devrez également activer full_page_writes sur le maître.

Notez qu'il existe certaines limitations dans une sauvegarde en ligne à partir du mode veille :

· Le fichier d'historique de sauvegarde n'est pas créé dans le cluster de bases de données sauvegardé.

· Il n'y a aucune garantie que tous les fichiers WAL requis pour la sauvegarde soient archivés au
fin de sauvegarde. Si vous prévoyez d'utiliser la sauvegarde pour une récupération d'archive et souhaitez
pour vous assurer que tous les fichiers requis sont disponibles à ce moment, vous devez inclure
dans la sauvegarde en utilisant l'option -x.

· Si le standby est promu maître pendant la sauvegarde en ligne, la sauvegarde échoue.

· Tous les enregistrements WAL requis pour la sauvegarde doivent contenir suffisamment d'écritures pleine page,
qui vous oblige à activer full_page_writes sur le master et de ne pas utiliser un outil comme
pg_compresslog en tant que archive_commande pour supprimer les écritures pleine page des fichiers WAL.

OPTIONS


Les options de ligne de commande suivantes contrôlent l'emplacement et le format de la sortie.

-D annuaire
--pgdata=annuaire
Répertoire dans lequel écrire la sortie. pg_basebackup créera le répertoire et tout
répertoires parents si nécessaire. Le répertoire existe peut-être déjà, mais c'est une erreur
si le répertoire existe déjà et n'est pas vide.

Lorsque la sauvegarde est en mode tar et que le répertoire est spécifié comme - (tiret), le fichier tar
le fichier sera écrit sur stdout.

Cette option est obligatoire.

-F le format
--format=le format
Sélectionne le format de la sortie. le format peut être l'un des suivants :

p
plaine
Écrire la sortie sous forme de fichiers simples, avec la même disposition que les données actuelles
répertoire et tablespaces. Lorsque le cluster n'a pas d'espaces de table supplémentaires, le
toute la base de données sera placée dans le répertoire cible. Si le cluster contient
des tablespaces supplémentaires, le répertoire de données principal sera placé dans la cible
répertoire, mais tous les autres tablespaces seront placés dans le même chemin absolu que
ils ont sur le serveur.

C'est le format par défaut.

t
goudron
Écrivez la sortie sous forme de fichiers tar dans le répertoire cible. Le répertoire de données principal
sera écrit dans un fichier nommé base.tar, et tous les autres tablespaces seront nommés
après l'OID du tablespace.

Si la valeur - (tiret) est spécifiée comme répertoire cible, le contenu du tar sera
écrit sur la sortie standard, adapté à la tuyauterie vers gzip par exemple. C'est seulement
possible si le cluster n'a pas d'espaces de table supplémentaires.

-r taux
--taux-max=taux
Le taux de transfert maximal des données transférées depuis le serveur. Les valeurs sont en kilo-octets
par seconde. Utilisez un suffixe M pour indiquer les mégaoctets par seconde. Un suffixe de k est aussi
accepté et n'a aucun effet. Les valeurs valides sont comprises entre 32 ko par seconde et 1024
mégaoctets par seconde.

Le but est de limiter l'impact de pg_basebackup sur le serveur en cours d'exécution.

Cette option affecte toujours le transfert du répertoire de données. Le transfert des fichiers WAL est
n'est affecté que si la méthode de collecte est fetch.

-R
--write-recovery-conf
Écrivez un fichier recovery.conf minimal dans le répertoire de sortie (ou dans le fichier d'archive de base
lors de l'utilisation du format tar) pour faciliter la configuration d'un serveur de secours.

-T vieuxrépertoire=nouveaurép
--tablespace-mapping=vieuxrépertoire=nouveaurép
Déplacer le tablespace dans le répertoire vieuxrépertoire à nouveaurép lors de la sauvegarde. Être
efficace, vieuxrépertoire doit correspondre exactement à la spécification du chemin du tablespace tel qu'il est
actuellement défini. (Mais ce n'est pas une erreur s'il n'y a pas de tablespace dans vieuxrépertoire
contenu dans la sauvegarde.) Les deux vieuxrépertoire et mes nouveaurép doivent être des chemins absolus. Si un chemin
contient un signe =, échappez-le avec une barre oblique inverse. Cette option peut être spécifiée
plusieurs fois pour plusieurs tablespaces. Voir exemples ci-dessous.

Si un tablespace est déplacé de cette manière, les liens symboliques à l'intérieur des données principales
répertoire sont mis à jour pour pointer vers le nouvel emplacement. Le nouveau répertoire de données est donc prêt
à utiliser pour une nouvelle instance de serveur avec tous les tablespaces dans les emplacements mis à jour.

--xlogdir=répxlog
Spécifie l'emplacement du répertoire du journal des transactions. répxlog doit être un absolu
chemin. Le répertoire du journal des transactions ne peut être spécifié que lorsque la sauvegarde est en clair
mode.

-x
--xlog
L'utilisation de cette option équivaut à l'utilisation de -X avec la méthode fetch.

-X méthode
--xlog-méthode=méthode
Inclut les fichiers journaux de transactions requis (fichiers WAL) dans la sauvegarde. Cette volonté
inclure tous les journaux de transactions générés lors de la sauvegarde. Si cette option est spécifiée,
il est possible de démarrer un postmaster directement dans le répertoire extrait sans le
besoin de consulter l'archive du journal, ce qui en fait une sauvegarde complètement autonome.

Les méthodes suivantes de collecte des journaux de transactions sont prises en charge :

f
rapporter
Les fichiers journaux des transactions sont collectés à la fin de la sauvegarde. Il est donc
nécessaire pour que le paramètre wal_keep_segments soit suffisamment élevé pour que le journal
n'est pas supprimé avant la fin de la sauvegarde. Si le journal a été tourné lorsqu'il est
temps de le transférer, la sauvegarde échouera et sera inutilisable.

s
courant
Diffusez le journal des transactions pendant la création de la sauvegarde. Cela ouvrira une seconde
connexion au serveur et commencer à diffuser le journal des transactions en parallèle tout en
exécuter la sauvegarde. Par conséquent, il utilisera jusqu'à deux connexions configurées par le
paramètre max_wal_senders. Tant que le client peut suivre le journal des transactions
reçu, l'utilisation de ce mode ne nécessite pas l'enregistrement de journaux de transactions supplémentaires sur le
maître

-z
--gzip
Active la compression gzip de la sortie du fichier tar, avec le niveau de compression par défaut.
La compression n'est disponible que lors de l'utilisation du format tar.

-Z niveau
--compresser=niveau
Active la compression gzip de la sortie du fichier tar et spécifie le niveau de compression (1
à 9, 9 étant la meilleure compression). La compression n'est disponible que lors de l'utilisation du tar
le format.

Les options de ligne de commande suivantes contrôlent la génération de la sauvegarde et l'exécution de
le programme.

-c rapide|propagation
--point de contrôle=rapide|propagation
Définit le mode de point de contrôle sur rapide ou étendu (par défaut) (voir Section 24.3.3, « Créer une base
Sauvegarde à l'aide de l'API de bas niveau », dans la documentation).

-l étiquette
--étiquette=étiquette
Définit le libellé de la sauvegarde. Si aucun n'est spécifié, une valeur par défaut de "pg_basebackup
sauvegarde de base » sera utilisé.

-P
--le progrès
Permet des rapports d'avancement. L'activation de cette option fournira une progression approximative
rapport lors de la sauvegarde. Étant donné que la base de données peut changer pendant la sauvegarde, c'est
n'est qu'une approximation et peut ne pas se terminer à 100 % exactement. En particulier, lorsque le journal WAL est
inclus dans la sauvegarde, la quantité totale de données ne peut pas être estimée à l'avance, et
dans ce cas, la taille cible estimée augmentera une fois qu'elle dépassera l'estimation totale
sans WAL.

Lorsque cette option est activée, la sauvegarde démarre en énumérant la taille de l'ensemble
base de données, puis revenez en arrière et envoyez le contenu réel. Cela peut rendre la sauvegarde prendre
un peu plus longtemps, et en particulier cela prendra plus de temps avant que les premières données soient envoyées.

-v
--verbeux
Active le mode détaillé. Affichera quelques étapes supplémentaires pendant le démarrage et l'arrêt, comme
ainsi que d'afficher le nom exact du fichier en cours de traitement si la progression
les rapports sont également activés.

Les options de ligne de commande suivantes contrôlent les paramètres de connexion à la base de données.

-d connstr
--nombd=connstr
Spécifie les paramètres utilisés pour se connecter au serveur, sous forme de chaîne de connexion. Voir
Section 31.1.1, « Chaînes de connexion », dans la documentation pour plus d'informations.

L'option s'appelle --dbname par souci de cohérence avec les autres applications clientes, mais
car pg_basebackup ne se connecte à aucune base de données particulière du cluster,
le nom de la base de données dans la chaîne de connexion sera ignoré.

-h hôte
--hôte=hôte
Spécifie le nom d'hôte de la machine sur laquelle le serveur s'exécute. Si la valeur
commence par une barre oblique, il est utilisé comme répertoire pour le socket de domaine Unix. Les
par défaut est tiré du PGHOST variable d'environnement, si définie, sinon un domaine Unix
la connexion socket est tentée.

-p port
--port=port
Spécifie le port TCP ou l'extension de fichier socket de domaine Unix local sur lequel le serveur
est à l'écoute des connexions. Par défaut à la PGPORT variable d'environnement, si elle est définie, ou
une valeur par défaut compilée.

-s intervalle
--status-intervalle=intervalle
Spécifie le nombre de secondes entre les paquets d'état renvoyés au serveur. Cette
permet une surveillance plus facile de la progression du serveur. Une valeur de zéro désactive le
mises à jour de statut périodiques complètement, bien qu'une mise à jour soit toujours envoyée lorsque
demandé par le serveur, pour éviter le timeout de déconnexion. La valeur par défaut est de 10 secondes.

-U Nom d'utilisateur
--nom d'utilisateur=Nom d'utilisateur
Nom d'utilisateur sous lequel se connecter.

-w
--pas de mot de passe
N'émettez jamais d'invite de mot de passe. Si le serveur requiert une authentification par mot de passe et un
le mot de passe n'est pas disponible par d'autres moyens tels qu'un fichier .pgpass, la connexion
tentative échouera. Cette option peut être utile dans les tâches par lots et les scripts où aucun utilisateur
est présent pour saisir un mot de passe.

-W
--le mot de passe
Forcez pg_basebackup à demander un mot de passe avant de se connecter à une base de données.

Cette option n'est jamais indispensable, car pg_basebackup demandera automatiquement un
mot de passe si le serveur demande une authentification par mot de passe. Cependant, pg_basebackup
gaspiller une tentative de connexion en découvrant que le serveur veut un mot de passe. Dans certains cas
ça vaut la peine de taper -W pour éviter la tentative de connexion supplémentaire.

D'autres options sont également disponibles :

-V
--version
Imprimez la version de pg_basebackup et quittez.

-?
--Aidez-moi
Affichez l'aide sur les arguments de ligne de commande de pg_basebackup et quittez.

ENVIRONNEMENT


Cet utilitaire, comme la plupart des autres utilitaires PostgreSQL, utilise les variables d'environnement
supporté par libpq (voir Section 31.14, « Variables d'environnement », dans la documentation).

NOTES


La sauvegarde inclura tous les fichiers du répertoire de données et des tablespaces, y compris le
les fichiers de configuration et tous les fichiers supplémentaires placés dans le répertoire par des tiers. Mais
seuls les fichiers et répertoires normaux sont copiés. Liens symboliques (autres que ceux utilisés pour
tablespaces) et les fichiers de périphériques spéciaux sont ignorés. (Voir Section 50.3, « Streaming
Protocole de réplication", dans la documentation pour les détails précis.)

Les tablespaces seront au format simple par défaut sauvegardés dans le même chemin qu'ils ont sur le
serveur, sauf si l'option --tablespace-mapping est utilisée. Sans cette option, exécuter un
la sauvegarde de base au format simple sur le même hôte que le serveur ne fonctionnera pas si les tablespaces sont
en cours d'utilisation, car la sauvegarde devrait être écrite dans les mêmes emplacements de répertoire que le
espaces de table originaux.

Lorsque le mode format tar est utilisé, il est de la responsabilité de l'utilisateur de décompresser chaque fichier tar
avant de démarrer le serveur PostgreSQL. S'il y a des tablespaces supplémentaires, les fichiers tar
car ils doivent être déballés aux bons endroits. Dans ce cas, les liens symboliques pour
ces tablespaces seront créés par le serveur en fonction du contenu du
tablespace_map qui est inclus dans le fichier base.tar.

pg_basebackup fonctionne avec des serveurs de la même version ou d'une version majeure plus ancienne, jusqu'à 9.1.
Cependant, le mode de diffusion WAL (-X stream) ne fonctionne qu'avec la version 9.3 et les versions ultérieures du serveur, et
le mode format tar (--format=tar) de la version actuelle ne fonctionne qu'avec la version 9.5 du serveur
ou plus tard.

EXEMPLES


Pour créer une sauvegarde de base du serveur sur mydbserver et la stocker dans le répertoire local
/usr/local/pgsql/data :

$ pg_basebackup -h monserveur -D /usr/local/pgsql/données

Pour créer une sauvegarde du serveur local avec un fichier tar compressé pour chaque tablespace,
et stockez-le dans la sauvegarde du répertoire, affichant un rapport de progression pendant l'exécution :

$ pg_basebackup -D sauvegarde -Pi -z -P

Pour créer une sauvegarde d'une base de données locale à espace de table unique et la compresser avec bzip2 :

$ pg_basebackup -D - -Pi | bzip2 > sauvegarde.tar.bz2

(Cette commande échouera s'il y a plusieurs tablespaces dans la base de données.)

Pour créer une sauvegarde d'une base de données locale où le tablespace dans /opt/ts est déplacé vers
./sauvegarde/ts :

$ pg_basebackup -D sauvegarde/données -T /opt/ts=$(mot de passe)/sauvegarde/ts

Utilisez pg_basebackup en ligne en utilisant les services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad




×
Publicité
❤ ️Achetez, réservez ou achetez ici — gratuitement, contribue à maintenir la gratuité des services.