Skip to content

Commit

Permalink
Mise à jour en version 10 beta 4
Browse files Browse the repository at this point in the history
  • Loading branch information
gleu committed Sep 3, 2017
1 parent 2e7ee42 commit 43a7880
Show file tree
Hide file tree
Showing 25 changed files with 1,455 additions and 329 deletions.
87 changes: 47 additions & 40 deletions postgresql/backup.xml
Original file line number Diff line number Diff line change
Expand Up @@ -938,29 +938,39 @@ SELECT pg_start_backup('label', false, false);
<programlisting>
SELECT * FROM pg_stop_backup(false, true);
</programlisting>
Cela met fin au processus de sauvegarde et réalise une bascule
automatique vers le prochain segment WAL. Cette bascule est nécessaire
pour permettre au dernier fichier de segment WAL écrit pendant la
sauvegarde d'être immédiatement archivable.
Cela met fin au processus de sauvegarde. Sur un serveur primaire, cela
réalise aussi une bascule automatique au prochain segment de journal de
transactions. Sur un serveur secondaire (standby), il n'est pas possible
de basculer automatiquement les segments des journaux de transactions,
donc vous pourriez vouloir utiliser <function>pg_switch_wal</function>
sur le primaire pour réaliser une bascule manuelle. Cette bascule est
nécessaire pour permettre au dernier fichier de segment WAL écrit pendant
la sauvegarde d'être immédiatement archivable.
</para>
<para>
La fonction <function>pg_stop_backup</function> retournera une ligne avec trois
valeurs. Le second de ces champs devrait être écrit dans un fichier nommé
<filename>backup_label</filename> dans le répertoire racine de la sauvegarde.
Le troisième champ devrait être écrit dans un fichier nommé
<filename>tablespace_map</filename> sauf si le champ est vide. Ces fichiers
sont vitaux pour le fonctionnement de la sauvegarde et doivent être écrits sans modification.
La fonction <function>pg_stop_backup</function> retournera une ligne avec
trois valeurs. Le second de ces champs devrait être écrit dans un fichier
nommé <filename>backup_label</filename> dans le répertoire racine de la
sauvegarde. Le troisième champ devrait être écrit dans un fichier nommé
<filename>tablespace_map</filename> sauf si le champ est vide. Ces
fichiers sont vitaux pour le fonctionnement de la sauvegarde et doivent
être écrits sans modification.
</para>
</listitem>
<listitem>
<para>
Une fois que les fichiers de segment WAL utilisés lors de la sauvegarde
Une fois que les fichiers de segment WAL utilisés lors de la sauvegarde
sont archivés, c'est terminé. Le fichier identifié par le résultat de
<function>pg_stop_backup</function> est le dernier segment nécessaire pour produire
un jeu complet de fichiers de sauvegarde.
Si <varname>archive_mode</varname> est activé,
<function>pg_stop_backup</function> ne rend pas la main avant que le dernier segment
n'ait été archivé. L'archivage de ces fichiers est automatique puisque
<function>pg_stop_backup</function> est le dernier segment nécessaire
pour produire un jeu complet de fichiers de sauvegarde. Sur un serveur
primaire, si <varname>archive_mode</varname> est activé et que le
paramètre <literal>wait_for_archive</literal> est activé (valeur
<literal>true</literal>), <function>pg_stop_backup</function> ne rend pas
la main avant que le dernier segment n'ait été archivé. Sur un standby,
le paramètre <varname>archive_mode</varname> doit valoir
<literal>always</literal> pour que la fonction
<function>pg_stop_backup</function> attende. L'archivage de ces fichiers
est automatique puisque
<varname>archive_command</varname> est déjà configuré. Dans la plupart des
cas, c'est rapide, mais il est conseillé de surveiller le système d'archivage pour
s'assurer qu'il n'y a pas de retard. Si le processus d'archivage a pris du retard
Expand All @@ -975,7 +985,8 @@ SELECT * FROM pg_stop_backup(false, true);
<para>
Si le processus de sauvegarde surveille et s'assure que tous les fichiers
de segment WAL nécessaires à la sauvegarde soient archivés avec succès,
le second paramètre (positionné à true par défaut), peut être positionné à
le paramètre <literal>wait_for_archive</literal> (positionné à true par
défaut), peut être positionné à
false pour que <function>pg_stop_backup</function> renvoie la main dès que
l'enregistrement de fin de sauvegarde est écrit dans le WAL. Par défaut,
<function>pg_stop_backup</function> attendra jusqu'à ce que tous les WAL
Expand All @@ -991,14 +1002,14 @@ SELECT * FROM pg_stop_backup(false, true);
<sect3 id="backup-lowlevel-base-backup-exclusive">
<title>Créer une sauvegarde exclusive de bas niveau</title>
<para>
Le procédé pour une sauvegarde exclusive est majoritairement le même
que pour la non-exclusive, mais il diffère en quelques étapes clés.
Il ne permet pas à plus d'une seule sauvegarde concurrente de s'exécuter,
et il peut y avoir quelques problèmes sur le serveur s'il s'arrête brutalement pendant
la sauvegarde. Avant la version 9.6 de PostgreSQL, il s'agissait de la seule méthode
bas niveau disponible, mais il est maintenant recommandé que tous les
utilisateurs mettent à jour leurs scripts pour utiliser une sauvegarde
non-exclusive si possible.
Le procédé pour une sauvegarde exclusive est majoritairement le même que
pour la non-exclusive, mais il diffère en quelques étapes clés. Ce type
de sauvegarde peut seulement être réalisé sur un serveur primaire et ne
permet pas des sauvegardes concurrentes. Avant la version 9.6 de
PostgreSQL, il s'agissait de la seule méthode bas niveau disponible,
mais il est maintenant recommandé que tous les utilisateurs mettent à
jour leurs scripts pour utiliser une sauvegarde non-exclusive si
possible.
</para>
<para>
<orderedlist>
Expand Down Expand Up @@ -1057,27 +1068,23 @@ SELECT pg_start_backup('label', true);
<xref linkend="backup-lowlevel-base-backup-data"/> pour les considérations à
prendre en compte durant cette sauvegarde.
</para>
<para>
Notez que, si le serveur s'arrête brutalement lors de la sauvegarde, il
pourrait ne pas être possible de recommencer tant que le fichier
<literal>backup_label</literal> ne soit manuellement supprimée du
répertoire <envar>PGDATA</envar>.
</para>
</listitem>
<listitem>
<para>
Se connecter à nouveau à la base de données en tant qu'utilisateur ayant
le droit d'exécuter pg_stop_backup (superutilisateur, ou un utilisateur
ayant le droit EXECUTE sur cette fonction) et lancer la commande&nbsp;:
<programlisting>SELECT pg_stop_backup();</programlisting> Cela met fin au
processus de sauvegarde et réalise une bascule automatique vers le
prochain segment WAL. Cette bascule est nécessaire pour permettre au
dernier fichier de segment WAL écrit pendant la sauvegarde d'être
immédiatement archivable. Lorsqu'elle est appelée sur un serveur
primaire, cette fonction termine le mode de sauvegarde et réalise une
bascule automatique vers le prochain journal de transactions. La raison
de cette bascule est de s'assurer que le dernier journal écrit pendant la
sauvegarde soit prêt à être archivé. Lorsqu'elle est appelée sur le
standby, cette fonction termine seulement le mode de sauvegarde. Une
bascule du journal de transactions sera nécessaire pour s'assurer que
tous les journaux de transactions nécessaires à la restauration de la
sauvegarde peuvent être archivés. Si le primaire n'a pas d'activé
suffisante en écriture pour en déclencher un,
<function>pg_switch_wal</function> devrait être exécuté sur le primaire.
<programlisting>SELECT pg_stop_backup();</programlisting> Cette fonction
met fin au processus de sauvegarde et réalise une bascule automatique
vers le prochain segment WAL. Cette bascule est nécessaire pour permettre
au dernier fichier de segment WAL écrit pendant la sauvegarde d'être
immédiatement archivable.
</para>
</listitem>
<listitem>
Expand Down
16 changes: 4 additions & 12 deletions postgresql/catalogs.xml
Original file line number Diff line number Diff line change
Expand Up @@ -1382,12 +1382,8 @@
<entry><structfield>rolreplication</structfield></entry>
<entry><type>bool</type></entry>
<entry>
Le rôle est un rôle de réplication, c'est-à-dire qu'il peut
initier une réplication en flux (voir <xref
linkend="streaming-replication"/>) et lancer/arrêter le mode de
sauvegarde système grâce aux fonctions
<function>pg_start_backup</function> et
<function>pg_stop_backup</function>.
Le rôle est un rôle de réplication. Ce type de rôle peut initier des
connexions de réplication et créer/supprimer des slots de réplication.
</entry>
</row>

Expand Down Expand Up @@ -10302,12 +10298,8 @@ SELECT * FROM pg_locks pl LEFT JOIN pg_prepared_xacts ppx
<entry><type>bool</type></entry>
<entry></entry>
<entry>
Le rôle est un rôle de réplication. Autrement dit, ce rôle peut
être utilisé pour lancer une réplication en flux (voir <xref
linkend="streaming-replication"/>) et peut mettre en place le
mode de sauvegarde système en utilisant les fonctions
<function>pg_start_backup</function> et
<function>pg_stop_backup</function>.
Le rôle est un rôle de réplication. Ce type de rôle peut initier des
connexions de réplication et créer/supprimer des slots de réplication.
</entry>
</row>

Expand Down
129 changes: 103 additions & 26 deletions postgresql/charset.xml
Original file line number Diff line number Diff line change
Expand Up @@ -671,15 +671,16 @@ SELECT a COLLATE "C" &lt; b COLLATE "POSIX" FROM test1;
</para>

<para>
Avec ICU, il n'est pas nécessaire d'énumérer tous les noms de locales possibles. ICU
utilise un système de nommage particulier pour les locales, mais il y a plus de façons
de nommer une locale qu'il y a actuellement de locales distinctes. (En fait, n'importe quelle
chaine de caractères sera acceptée en tant que nom de locale.)
Consultez <ulink url="http://userguide.icu-project.org/locale"></ulink> pour
des informations sur le nommage des locales ICU. <command>initdb</command> utilise l'API ICU
pour extraire un jeu de locales avec des règles de collation distinctes afin de peupler
le jeu initial de collations. Voici quelques exemples de collations pouvant
être créées&nbsp;:
Avec ICU, il n'est pas nécessaire d'énumérer tous les noms de locales
possibles. ICU utilise un système de nommage particulier pour les
locales, mais il y a plus de façons de nommer une locale qu'il y a
actuellement de locales distinctes. (En fait, n'importe quelle chaine de
caractères sera acceptée en tant que nom de locale.) Consultez <ulink
url="http://userguide.icu-project.org/locale"></ulink> pour des
informations sur le nommage des locales ICU. <command>initdb</command>
utilise l'API ICU pour extraire un jeu de locales distinctes afin de
peupler le jeu initial de collations. Voici quelques exemples de
collations pouvant être créées&nbsp;:

<variablelist>
<varlistentry>
Expand All @@ -689,31 +690,18 @@ SELECT a COLLATE "C" &lt; b COLLATE "POSIX" FROM test1;
</listitem>
</varlistentry>

<varlistentry>
<term><literal>de-u-co-phonebk-x-icu</literal></term>
<listitem>
<para>Collation allemande, variante d'annuaire</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>de-AT-x-icu</literal></term>
<listitem>
<para>Collation allemande pour l'Autriche, variante par défaut</para>
<para>
(Notez qu'avec cette syntaxe, il n'y a pas de
<literal>de-DE-x-icu</literal> ou <literal>de-CH-x-icu</literal>,
car elles sont équivalentes à <literal>de-x-icu</literal>.)
(Il y a aussi, par exemple, <literal>de-DE-x-icu</literal> ou
<literal>de-CH-x-icu</literal> mais, lorsque cette partie fut rédigée,
elles étaient équivalentes à <literal>de-x-icu</literal>.)
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>de-AT-u-co-phonebk-x-icu</literal></term>
<listitem>
<para>Collation allemande pour l'Autriche, variante d'annuaire</para>
</listitem>
</varlistentry>
<varlistentry>
<term><literal>und-x-icu</literal> (pour <quote>undefined</quote>)</term>
<listitem>
Expand All @@ -733,6 +721,96 @@ SELECT a COLLATE "C" &lt; b COLLATE "POSIX" FROM test1;
sont ignorés. Tenter d'en utiliser un renverra une erreur du type
<quote>collation "de-x-icu" for encoding "WIN874" does not exist</quote>.
</para>

<para>
ICU permet la personnalisation des collations en dehors de l'ensemble pré-
enregistré langue/pays, préchargé par <command>initdb</command>. Les
utilisateurs sont encouragés à définir leur propres objets de collation
utilisant ces fonctionnalités pour rendre le comportement de tri
compatible avec leurs besoins. Voici quelques exemples&nbsp;:

<variablelist>
<varlistentry>
<term><literal>CREATE COLLATION "de-u-co-phonebk-x-icu" (provider = icu, locale = 'de-u-co-phonebk')</literal></term>
<listitem>
<para>Collationnement allemand avec le type de collationnement d'un
carnet d'adresses</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>CREATE COLLATION "und-u-co-emoji-x-icu" (provider = icu, locale = 'und-u-co-emoji')</literal></term>
<listitem>
<para>
Collationnement racine avec un type de collationnement Emoji, d'après
l'Unicode Technical Standard #51
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>CREATE COLLATION digitslast (provider = icu, locale = 'en-u-kr-latn-digit')</literal></term>
<listitem>
<para>
Trie les chiffres après les lettres latines. (Par défaut, les chiffres
sont avant les lettres.)
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>CREATE COLLATION upperfirst (provider = icu, locale = 'en-u-kf-upper')</literal></term>
<listitem>
<para>
Trie les lettres majuscules avant les lettres minuscules. (La valeur
par défaut est les mniscules avant).
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>CREATE COLLATION special (provider = icu, locale = 'en-u-kf-upper-kr-latn-digit')</literal></term>
<listitem>
<para>
Combine ces deux options.
</para>
</listitem>
</varlistentry>

<varlistentry>
<term><literal>CREATE COLLATION numeric (provider = icu, locale = 'en-u-kn-true')</literal></term>
<listitem>
<para>
Ordre numérique, trie les séquences de chiffres par leur valeur
numérique. Par exemple&nbsp;: <literal>A-21</literal> &lt;
<literal>A-123</literal> (aussi connu sous le nom de tri naturel).
</para>
</listitem>
</varlistentry>
</variablelist>

Voir <ulink
url="http://unicode.org/reports/tr35/tr35-collation.html">Unicode
Technical Standard #35</ulink> et <ulink
url="https://tools.ietf.org/html/bcp47">BCP 47</ulink> pour les détails.
La liste des types de collationnement possibles (sous-ensemble
<literal>co</literal>) peut être trouvée dans le <ulink
url="http://www.unicode.org/repos/cldr/trunk/common/bcp47/collation.xml">dépôt
CLDR</ulink>. Le <ulink url="https://ssl.icu-project.org/icu-
bin/locexp">ICU Locale Explorer</ulink> peut être utilisé pour vérifier
les détails de la définition d'une locale particulière.
</para>

<para>
Notez qu'alors que ce système permet la création de collationnements qui
<quote>ignorent la casse</quote> ou <quote>ignorent les accents</quote> ou
quelque chose de similaire (en utilisant la clé <literal>ks</literal>),
PostgreSQL ne permet pas pour le moment que ces collationnements
n'agissent d'une façon réellement insensible à la casse ou aux accents.
Toute chaîne qui se compare raisonnablement suivant le collationnement
mais qui n'est pas identique octet à octet, sera trié suivant la valeurs
des octets.
</para>
</sect4>
</sect3>

Expand All @@ -748,7 +826,6 @@ SELECT a COLLATE "C" &lt; b COLLATE "POSIX" FROM test1;
<programlisting>
CREATE COLLATION german FROM "de_DE";
CREATE COLLATION french FROM "fr-x-icu";
CREATE COLLATION "de-DE-x-icu" FROM "de-x-icu";
</programlisting>
</para>

Expand Down
2 changes: 1 addition & 1 deletion postgresql/client-auth.xml
Original file line number Diff line number Diff line change
Expand Up @@ -969,7 +969,7 @@ omicron bryanh guest1
<para>
<literal>scram-sha-256</literal> effectue une authentification SCRAM-SHA-256,
comme cela est décrit dans
<ulink url="https://tools.ietf.org/html/rfc5802">RFC5802</ulink>. Ceci
<ulink url="https://tools.ietf.org/html/rfc7677">RFC 7677</ulink>. Ceci
est basé sur un schéma de type question-réponse, qui empêche le sniffing de mot de passe sur
les connexions non fiables. Cette méthode est plus sûre que la méthode <literal>md5</literal>,
mais peut ne pas être supportée par d'anciens clients.
Expand Down
7 changes: 4 additions & 3 deletions postgresql/config.xml
Original file line number Diff line number Diff line change
Expand Up @@ -2151,9 +2151,10 @@ block : bloc vidé, dirty bloc : bloc à vider ?
<listitem>
<para>
Configure le nombre maximum de processus parallèles pouvant être lancé
par un seul noeud <literal>Gather</literal>. Les processus parallèles
sont pris dans l'ensemble de processus établi par <xref
linkend="guc-max-worker-processes"/>, limited by
par un seul noeud <literal>Gather</literal> ou <literal>Gather
Merge</literal>. Les processus parallèles sont pris dans l'ensemble de
processus établi par <xref
linkend="guc-max-worker-processes"/>, limité par
<xref linkend="guc-max-parallel-workers"/>. Notez que le nombre demandé de
processus parallèles pourrait ne pas être disponible à l'exécution. Si
cela survient, le plan s'exécutera avec moins de processus qu'attendu, ce
Expand Down

0 comments on commit 43a7880

Please sign in to comment.