| 1 |
<?xml version="1.0" encoding="ISO-8859-15"?> |
|---|
| 2 |
<!-- Dernière modification |
|---|
| 3 |
le $Date$ |
|---|
| 4 |
par $Author$ |
|---|
| 5 |
révision $Revision$ --> |
|---|
| 6 |
<!-- SAS : 20071020, PG8.3b1 --> |
|---|
| 7 |
|
|---|
| 8 |
<chapter id="runtime-config"> |
|---|
| 9 |
<title>Configuration du serveur</title> |
|---|
| 10 |
|
|---|
| 11 |
<indexterm> |
|---|
| 12 |
<primary>configuration</primary> |
|---|
| 13 |
<secondary>du serveur</secondary> |
|---|
| 14 |
</indexterm> |
|---|
| 15 |
|
|---|
| 16 |
<para> |
|---|
| 17 |
Un grand nombre de paramètres de configuration permettent de modifier le |
|---|
| 18 |
comportement du système de bases de données. Dans la première section de ce |
|---|
| 19 |
chapitre, les méthodes de configuration de ces paramètres sont décrites ; les |
|---|
| 20 |
sections suivantes discutent de chaque paramètre en détail. |
|---|
| 21 |
</para> |
|---|
| 22 |
|
|---|
| 23 |
<sect1 id="config-setting"> |
|---|
| 24 |
<title>Paramètres de configuration</title> |
|---|
| 25 |
|
|---|
| 26 |
<para> |
|---|
| 27 |
Tous les noms de paramètres sont insensibles à la casse. Chaque |
|---|
| 28 |
paramètre prend une valeur d'un de ces quatre types : booléen, entier, |
|---|
| 29 |
nombre à virgule flottante ou chaîne de caractères. Les unités par défaut |
|---|
| 30 |
peuvent être récupérées en référençant <literal>pg_settings.unit</literal>. |
|---|
| 31 |
Les valeurs booléennes peuvent être <literal>ON</literal>, <literal>OFF</literal>, |
|---|
| 32 |
<literal>TRUE</literal>, <literal>FALSE</literal>, <literal>YES</literal>, |
|---|
| 33 |
<literal>NO</literal>, <literal>1</literal>, <literal>0</literal> |
|---|
| 34 |
ou tout préfixe non ambigü de celles-ci (toutes ces écritures sont |
|---|
| 35 |
insensibles à la casse). |
|---|
| 36 |
</para> |
|---|
| 37 |
|
|---|
| 38 |
<para> |
|---|
| 39 |
Certains paramètres indiquent une valeur de taille mémoire ou de durée. |
|---|
| 40 |
Ils ont chacun une unité implicite, soit Ko, soit blocs (typiquement |
|---|
| 41 |
8 Ko), soit millisecondes, soit secondes, soit minutes. Pour |
|---|
| 42 |
simplifier la saisie, une unité différente peut être indiquée |
|---|
| 43 |
de façon explicite. Les unités mémoire valides sont <literal>kB</literal> |
|---|
| 44 |
(kilo-octets), <literal>MB</literal> (Méga-octets) et |
|---|
| 45 |
<literal>GB</literal> (Giga-octets) ; les |
|---|
| 46 |
unités de temps valides sont <literal>ms</literal> |
|---|
| 47 |
(millisecondes), <literal>s</literal> (secondes), |
|---|
| 48 |
<literal>min</literal> (minutes), <literal>h</literal> (heures), |
|---|
| 49 |
et <literal>d</literal> (jours). Les unités de mémoire sont des |
|---|
| 50 |
multiples de 1024, pas de 1000. |
|---|
| 51 |
</para> |
|---|
| 52 |
|
|---|
| 53 |
<para> |
|---|
| 54 |
Une façon d'initialiser ces paramètres est d'éditer le fichier |
|---|
| 55 |
<filename>postgresql.conf</filename> |
|---|
| 56 |
<indexterm><primary>postgresql.conf</primary></indexterm> |
|---|
| 57 |
qui est normalement placé dans le répertoire data |
|---|
| 58 |
(<application>initdb</application> y installe une copie par défaut). |
|---|
| 59 |
Un exemple de contenu peut être : |
|---|
| 60 |
<programlisting># Ceci est un commentaire |
|---|
| 61 |
log_connections = yes |
|---|
| 62 |
log_destination = 'syslog' |
|---|
| 63 |
search_path = '"$user", public' |
|---|
| 64 |
shared_buffers = 128MB</programlisting> |
|---|
| 65 |
Un paramètre est indiqué par ligne. Le signe égal entre le nom et la |
|---|
| 66 |
valeur est optionnel. Les espaces n'ont pas de signification et les |
|---|
| 67 |
lignes vides sont ignorées. Les marques de hachage (<literal>#</literal>) |
|---|
| 68 |
introduisent des commentaires. Les valeurs des paramètres qui ne |
|---|
| 69 |
sont pas des identificateurs simples ou des nombres doivent être placées entre |
|---|
| 70 |
guillemets simples. Pour intégrer un guillemet simple dans la valeur d'un |
|---|
| 71 |
paramètre, on écrit soit deux guillemets (c'est la méthode préférée) soit |
|---|
| 72 |
un antislash suivi du guillemet. |
|---|
| 73 |
</para> |
|---|
| 74 |
|
|---|
| 75 |
<para> |
|---|
| 76 |
<indexterm> |
|---|
| 77 |
<primary><literal>include</literal></primary> |
|---|
| 78 |
<secondary>dans le fichier de configuration</secondary> |
|---|
| 79 |
</indexterm> |
|---|
| 80 |
En plus de la configuration des paramètres, le fichier |
|---|
| 81 |
<filename>postgresql.conf</filename> peut contenir des |
|---|
| 82 |
<firstterm>directives d'inclusion</firstterm> indiquant un autre fichier à |
|---|
| 83 |
lire et dont le contenu doit être traité à ce niveau comme partie intégrante du |
|---|
| 84 |
fichier de configuration. Les directives d'inclusion ressemblent simplement à : |
|---|
| 85 |
<programlisting> |
|---|
| 86 |
include 'nom_fichier' |
|---|
| 87 |
</programlisting> |
|---|
| 88 |
Si le nom du fichier n'est pas un chemin absolu, il est pris comme relatif |
|---|
| 89 |
au répertoire contenant le fichier de configuration le référençant. Les |
|---|
| 90 |
inclusions peuvent être imbriquées. |
|---|
| 91 |
</para> |
|---|
| 92 |
|
|---|
| 93 |
<para> |
|---|
| 94 |
<indexterm> |
|---|
| 95 |
<primary>SIGHUP</primary> |
|---|
| 96 |
</indexterm> |
|---|
| 97 |
Le fichier de configuration est relu à chaque fois que le processus |
|---|
| 98 |
serveur principal reçoit un signal <systemitem>SIGHUP</systemitem> |
|---|
| 99 |
(<literal>pg_ctl reload</literal> est le moyen le plus simple de |
|---|
| 100 |
l'envoyer). Le |
|---|
| 101 |
processus serveur principal propage aussi ce signal aux processus serveur |
|---|
| 102 |
en cours d'exécution de façon à ce que les sessions existantes |
|---|
| 103 |
obtiennent aussi la nouvelle valeur. Il est également possible d'envoyer |
|---|
| 104 |
le signal directement à un seul processus serveur. Quelques paramètres |
|---|
| 105 |
ne peuvent être initialisés qu'au lancement du serveur ; tout changement |
|---|
| 106 |
de leur valeur dans le fichier de configuration est ignoré jusqu'au prochain |
|---|
| 107 |
démarrage du serveur. |
|---|
| 108 |
</para> |
|---|
| 109 |
|
|---|
| 110 |
<para> |
|---|
| 111 |
Une autre façon de configurer ces paramètres est de les passer comme |
|---|
| 112 |
option de la commande <command>postgres</command> : |
|---|
| 113 |
<programlisting>postgres -c log_connections=yes -c log_destination='syslog'</programlisting> |
|---|
| 114 |
Les options de la ligne de commande surchargent le paramétrage |
|---|
| 115 |
effectué dans le fichier <filename>postgresql.conf</filename>. |
|---|
| 116 |
Ce qui signifie que la valeur d'un paramètre passé en ligne de commande |
|---|
| 117 |
ne peut plus être modifiée et rechargée à la volée à l'aide du fichier |
|---|
| 118 |
<filename>postgresql.conf</filename>. C'est pourquoi, bien que la méthode |
|---|
| 119 |
de la ligne de commande paraisse pratique, elle peut coûter en |
|---|
| 120 |
flexibilité par la suite. |
|---|
| 121 |
</para> |
|---|
| 122 |
|
|---|
| 123 |
<para> |
|---|
| 124 |
Il est parfois utile de donner une option en ligne de |
|---|
| 125 |
commande pour une session particulière unique. La variable d'environnement |
|---|
| 126 |
<envar>PGOPTIONS</envar> est utilisée côté client à ce propos : |
|---|
| 127 |
<programlisting>env PGOPTIONS='-c geqo=off' psql</programlisting> |
|---|
| 128 |
(Cela fonctionne pour toute application client |
|---|
| 129 |
fondée sur <application>libpq</application>, et non pas seulement pour |
|---|
| 130 |
<application>psql</application>.) Cela ne fonctionne pas pour |
|---|
| 131 |
les paramètres fixés au démarrage du serveur ou qui doivent être |
|---|
| 132 |
précisés dans <filename>postgresql.conf</filename>. |
|---|
| 133 |
</para> |
|---|
| 134 |
|
|---|
| 135 |
<para> |
|---|
| 136 |
De plus, il est possible d'affecter un ensemble de paramètres à un |
|---|
| 137 |
utilisateur ou à une base de données. Quand une session est lancée, les |
|---|
| 138 |
paramètres par défaut de l'utilisateur et de la base de données |
|---|
| 139 |
impliqués sont chargés. Les commandes |
|---|
| 140 |
<xref linkend="sql-alteruser" endterm="sql-alteruser-title"/> et |
|---|
| 141 |
<xref linkend="sql-alterdatabase" endterm="sql-alterdatabase-title"/> |
|---|
| 142 |
sont respectivement utilisées pour configurer ces paramètres. Les |
|---|
| 143 |
paramètres par base de données surchargent |
|---|
| 144 |
ceux passés sur la ligne de commande de <command>postgres</command> ou |
|---|
| 145 |
du fichier de configuration et sont à leur tour surchargés par ceux de |
|---|
| 146 |
l'utilisateur ; les deux sont surchargés par les paramètres de session. |
|---|
| 147 |
</para> |
|---|
| 148 |
|
|---|
| 149 |
<para> |
|---|
| 150 |
Quelques paramètres peuvent être modifiés dans les sessions |
|---|
| 151 |
<acronym>SQL</acronym> individuelles avec la commande |
|---|
| 152 |
<xref linkend="sql-set" endterm="sql-set-title"/>, par exemple : |
|---|
| 153 |
<screen>SET ENABLE_SEQSCAN TO OFF;</screen> |
|---|
| 154 |
Si <command>SET</command> est autorisé, il surcharge toutes les autres sources de |
|---|
| 155 |
valeurs pour le paramètre. Quelques paramètres ne peuvent pas être changés |
|---|
| 156 |
via <command>SET</command> : s'ils contrôlent un comportement qui |
|---|
| 157 |
ne peut pas être modifié sans relancer le serveur |
|---|
| 158 |
<productname>PostgreSQL</productname>, par exemple. De plus, quelques |
|---|
| 159 |
paramètres peuvent être modifiés via <command>SET</command> ou |
|---|
| 160 |
<command>ALTER</command> par les superutilisateurs, mais pas par les |
|---|
| 161 |
utilisateurs ordinaires. |
|---|
| 162 |
</para> |
|---|
| 163 |
|
|---|
| 164 |
<para> |
|---|
| 165 |
La commande <xref linkend="sql-show" endterm="sql-show-title"/> permet |
|---|
| 166 |
d'inspecter les valeurs courantes de tous les paramètres. |
|---|
| 167 |
</para> |
|---|
| 168 |
|
|---|
| 169 |
<para> |
|---|
| 170 |
La table virtuelle <structname>pg_settings</structname> (décrite dans la |
|---|
| 171 |
<xref linkend="view-pg-settings"/>) autorise aussi l'affichage et la mise à jour de |
|---|
| 172 |
paramètres de session à l'exécution. Elle est équivalente à <command>SHOW</command> |
|---|
| 173 |
et <command>SET</command> mais peut être plus facile à utiliser parce qu'elle |
|---|
| 174 |
peut être jointe avec d'autres tables et que ses lignes peuvent être |
|---|
| 175 |
sélectionnées en utilisant des conditions personnalisées. |
|---|
| 176 |
</para> |
|---|
| 177 |
</sect1> |
|---|
| 178 |
|
|---|
| 179 |
<sect1 id="runtime-config-file-locations"> |
|---|
| 180 |
<title>Emplacement des fichiers</title> |
|---|
| 181 |
|
|---|
| 182 |
<para> |
|---|
| 183 |
En plus du fichier <filename>postgresql.conf</filename> déjà mentionné, |
|---|
| 184 |
<productname>PostgreSQL</productname> utilise deux autres fichiers de |
|---|
| 185 |
configuration éditables manuellement. Ces fichiers contrôlent |
|---|
| 186 |
l'authentification du client (leur utilisation est discutée dans le |
|---|
| 187 |
<xref linkend="client-authentication"/>). Par défaut, les trois fichiers de |
|---|
| 188 |
configuration sont stockés dans le répertoire data du cluster de bases |
|---|
| 189 |
de données. Les paramètres décrits dans cette section permettent de |
|---|
| 190 |
déplacer les fichiers de configuration. Ce qui peut en faciliter |
|---|
| 191 |
l'administration. Il est, en particulier, souvent plus facile de |
|---|
| 192 |
s'assurer que les fichiers de configuration sont correctement sauvegardés |
|---|
| 193 |
quand ils sont conservés à part. |
|---|
| 194 |
</para> |
|---|
| 195 |
|
|---|
| 196 |
<variablelist> |
|---|
| 197 |
<varlistentry id="guc-data-directory" xreflabel="data_directory"> |
|---|
| 198 |
<term><varname>data_directory</varname> (<type>string</type>)</term> |
|---|
| 199 |
<listitem> |
|---|
| 200 |
<indexterm> |
|---|
| 201 |
<primary>paramètre de configuration <varname>data_directory</varname></primary> |
|---|
| 202 |
</indexterm> |
|---|
| 203 |
<para> |
|---|
| 204 |
Indique le répertoire à utiliser pour le stockage des données. |
|---|
| 205 |
Ce paramètre ne peut être initialisé qu'au lancement du |
|---|
| 206 |
serveur. |
|---|
| 207 |
</para> |
|---|
| 208 |
</listitem> |
|---|
| 209 |
</varlistentry> |
|---|
| 210 |
|
|---|
| 211 |
<varlistentry id="guc-config-file" xreflabel="config_file"> |
|---|
| 212 |
<term><varname>config_file</varname> (<type>string</type>)</term> |
|---|
| 213 |
<listitem> |
|---|
| 214 |
<indexterm> |
|---|
| 215 |
<primary>paramètre de configuration <varname>config_file</varname> |
|---|
| 216 |
</primary> |
|---|
| 217 |
</indexterm> |
|---|
| 218 |
<para> |
|---|
| 219 |
Indique le fichier de configuration principal du serveur |
|---|
| 220 |
(appelé <filename>postgresql.conf</filename>). Ce paramètre |
|---|
| 221 |
ne peut être initialisé que sur la ligne de commande de |
|---|
| 222 |
<command>postgres</command>. |
|---|
| 223 |
</para> |
|---|
| 224 |
</listitem> |
|---|
| 225 |
</varlistentry> |
|---|
| 226 |
|
|---|
| 227 |
<varlistentry id="guc-hba-file" xreflabel="hba_file"> |
|---|
| 228 |
<term><varname>hba_file</varname> (<type>string</type>)</term> |
|---|
| 229 |
<listitem> |
|---|
| 230 |
<indexterm> |
|---|
| 231 |
<primary>paramètre de configuration <varname>hba_file</varname></primary> |
|---|
| 232 |
</indexterm> |
|---|
| 233 |
<para> |
|---|
| 234 |
Indique le fichier de configuration de l'authentification |
|---|
| 235 |
fondée sur l'hôte (appelé <filename>pg_hba.conf</filename>). |
|---|
| 236 |
Ce paramètre ne peut être initialisé qu'au lancement du |
|---|
| 237 |
serveur. |
|---|
| 238 |
</para> |
|---|
| 239 |
</listitem> |
|---|
| 240 |
</varlistentry> |
|---|
| 241 |
|
|---|
| 242 |
<varlistentry id="guc-ident-file" xreflabel="ident_file"> |
|---|
| 243 |
<term><varname>ident_file</varname> (<type>string</type>)</term> |
|---|
| 244 |
<listitem> |
|---|
| 245 |
<indexterm> |
|---|
| 246 |
<primary>paramètre de configuration <varname>ident_file</varname></primary> |
|---|
| 247 |
</indexterm> |
|---|
| 248 |
<para> |
|---|
| 249 |
Indique le fichier de configuration de l'authentification |
|---|
| 250 |
<application>ident</application> (appelé <filename>pg_ident.conf</filename>). |
|---|
| 251 |
Ce paramètre ne peut être initialisé qu'au lancement du |
|---|
| 252 |
serveur. |
|---|
| 253 |
</para> |
|---|
| 254 |
</listitem> |
|---|
| 255 |
</varlistentry> |
|---|
| 256 |
|
|---|
| 257 |
<varlistentry id="guc-external-pid-file" |
|---|
| 258 |
xreflabel="external_pid_file"> |
|---|
| 259 |
<term><varname>external_pid_file</varname> (<type>string</type>)</term> |
|---|
| 260 |
<listitem> |
|---|
| 261 |
<indexterm> |
|---|
| 262 |
<primary>paramètre de configuration <varname>external_pid_file</varname></primary> |
|---|
| 263 |
</indexterm> |
|---|
| 264 |
<para> |
|---|
| 265 |
Indique le nom d'un fichier supplémentaire d'identifiant de |
|---|
| 266 |
processus (PID) créé par le serveur à l'intention des |
|---|
| 267 |
programmes d'administration du serveur. |
|---|
| 268 |
Ce paramètre ne peut être initialisé qu'au lancement du |
|---|
| 269 |
serveur. |
|---|
| 270 |
</para> |
|---|
| 271 |
</listitem> |
|---|
| 272 |
</varlistentry> |
|---|
| 273 |
</variablelist> |
|---|
| 274 |
|
|---|
| 275 |
<para> |
|---|
| 276 |
Dans une installation par défaut, aucun des paramètres ci-dessus n'est |
|---|
| 277 |
configuré explicitement. À la place, le répertoire des données est |
|---|
| 278 |
indiqué par l'option <option>-D</option> en ligne de commande ou par |
|---|
| 279 |
la variable d'environnement <envar>PGDATA</envar>. Les fichiers de |
|---|
| 280 |
configuration sont alors tous disponibles dans le répertoire des données. |
|---|
| 281 |
</para> |
|---|
| 282 |
|
|---|
| 283 |
<para> |
|---|
| 284 |
Pour conserver les fichiers de configuration dans un répertoire |
|---|
| 285 |
différent de data, l'option <option>-D</option> de la ligne de |
|---|
| 286 |
commande <command>postgres</command> |
|---|
| 287 |
ou la variable d'environnement <envar>PGDATA</envar> doit pointer sur le |
|---|
| 288 |
répertoire contenant les fichiers de configuration. Le paramètre |
|---|
| 289 |
<varname>data_directory</varname> doit alors être configuré dans le |
|---|
| 290 |
fichier <filename>postgresql.conf</filename> (ou sur la ligne de commande) pour |
|---|
| 291 |
préciser où est réellement situé le répertoire des données. |
|---|
| 292 |
<varname>data_directory</varname> surcharge <option>-D</option> et |
|---|
| 293 |
<envar>PGDATA</envar> pour l'emplacement du répertoire des données, |
|---|
| 294 |
mais pas pour l'emplacement des fichiers de configuration. |
|---|
| 295 |
</para> |
|---|
| 296 |
|
|---|
| 297 |
<para> |
|---|
| 298 |
les noms des fichiers de configuration et leur emplacement peuvent |
|---|
| 299 |
être indiqués individuellement en utilisant les |
|---|
| 300 |
paramètres <varname>config_file</varname>, <varname>hba_file</varname> et/ou |
|---|
| 301 |
<varname>ident_file</varname>. <varname>config_file</varname> ne peut être |
|---|
| 302 |
indiqué que sur la ligne de commande de <command>postgres</command> |
|---|
| 303 |
mais les autres peuvent être placés dans le fichier de configuration |
|---|
| 304 |
principal. Si les trois paramètres et <varname>data_directory</varname> sont |
|---|
| 305 |
configurés explicitement, alors il n'est pas nécessaire d'indiquer |
|---|
| 306 |
<option>-D</option> ou <envar>PGDATA</envar>. |
|---|
| 307 |
</para> |
|---|
| 308 |
|
|---|
| 309 |
<para> |
|---|
| 310 |
Lors de la configuration de ces paramètres, un chemin relatif est |
|---|
| 311 |
interprété d'après le répertoire d'où est lancé <command>postgres</command>. |
|---|
| 312 |
</para> |
|---|
| 313 |
|
|---|
| 314 |
</sect1> |
|---|
| 315 |
|
|---|
| 316 |
<sect1 id="runtime-config-connection"> |
|---|
| 317 |
<title>Connexions et authentification</title> |
|---|
| 318 |
|
|---|
| 319 |
<sect2 id="runtime-config-connection-settings"> |
|---|
| 320 |
<title>Paramètres de connexion</title> |
|---|
| 321 |
|
|---|
| 322 |
<variablelist> |
|---|
| 323 |
|
|---|
| 324 |
<varlistentry id="guc-listen-addresses" xreflabel="listen_addresses"> |
|---|
| 325 |
<term><varname>listen_addresses</varname> (<type>string</type>)</term> |
|---|
| 326 |
<listitem> |
|---|
| 327 |
<indexterm> |
|---|
| 328 |
<primary>paramètre de configuration <varname>listen_addresses</varname> |
|---|
| 329 |
</primary> |
|---|
| 330 |
</indexterm> |
|---|
| 331 |
<para> |
|---|
| 332 |
Indique les adresses TCP/IP sur lesquelles le serveur écoute |
|---|
| 333 |
les connexions en provenance d'applications clientes. La valeur prend la forme |
|---|
| 334 |
d'une liste de noms d'hôte ou d'adresses IP numériques séparés |
|---|
| 335 |
par des virgules. L'entrée spéciale <literal>*</literal> correspond |
|---|
| 336 |
à toutes les interfaces IP disponibles. Si la liste est vide, le |
|---|
| 337 |
serveur n'écoute aucune interface IP, auquel cas seuls les |
|---|
| 338 |
sockets de domaine Unix peuvent être utilisées pour s'y connecter. |
|---|
| 339 |
La valeur par défaut est |
|---|
| 340 |
<systemitem class="systemname">localhost</systemitem>, ce qui |
|---|
| 341 |
n'autorise que les |
|---|
| 342 |
connexions locales de type <quote>loopback</quote>. Ce |
|---|
| 343 |
paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 344 |
</para> |
|---|
| 345 |
</listitem> |
|---|
| 346 |
</varlistentry> |
|---|
| 347 |
|
|---|
| 348 |
<varlistentry id="guc-port" xreflabel="port"> |
|---|
| 349 |
<term><varname>port</varname> (<type>integer</type>)</term> |
|---|
| 350 |
<listitem> |
|---|
| 351 |
<indexterm> |
|---|
| 352 |
<primary>paramètre de configuration <varname>port</varname></primary> |
|---|
| 353 |
</indexterm> |
|---|
| 354 |
<para> |
|---|
| 355 |
Le port TCP sur lequel le serveur écoute ; 5432 par défaut. |
|---|
| 356 |
Le même numéro de port est utilisé pour toutes les |
|---|
| 357 |
adresses IP que le serveur écoute. Ce paramètre ne peut |
|---|
| 358 |
être configuré qu'au lancement du serveur. |
|---|
| 359 |
</para> |
|---|
| 360 |
</listitem> |
|---|
| 361 |
</varlistentry> |
|---|
| 362 |
|
|---|
| 363 |
<varlistentry id="guc-max-connections" xreflabel="max_connections"> |
|---|
| 364 |
<term><varname>max_connections</varname> (<type>integer</type>)</term> |
|---|
| 365 |
<listitem> |
|---|
| 366 |
<indexterm> |
|---|
| 367 |
<primary>paramètre de configuration <varname>max_connections</varname> |
|---|
| 368 |
</primary> |
|---|
| 369 |
</indexterm> |
|---|
| 370 |
<para> |
|---|
| 371 |
Indique le nombre maximum de connexions concurrentes au serveur de |
|---|
| 372 |
base de données. La valeur par défaut typique est de 100 connexions, |
|---|
| 373 |
mais elle peut être moindre si les paramètres du noyau ne le supportent pas |
|---|
| 374 |
(ce qui est déterminé lors de l'<application>initdb</application>). Ce |
|---|
| 375 |
paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 376 |
</para> |
|---|
| 377 |
|
|---|
| 378 |
<para> |
|---|
| 379 |
L'augmentation de ce paramètre peut obliger <productname>PostgreSQL</productname> |
|---|
| 380 |
à réclamer plus de mémoire partagée |
|---|
| 381 |
<systemitem class="osname">System V</systemitem> |
|---|
| 382 |
ou de sémaphores que ne le permet la configuration par défaut du système |
|---|
| 383 |
d'exploitation. Voir la <xref linkend="sysvipc"/> pour plus |
|---|
| 384 |
d'informations sur la façon d'ajuster ces paramètres, si nécessaire. |
|---|
| 385 |
</para> |
|---|
| 386 |
</listitem> |
|---|
| 387 |
</varlistentry> |
|---|
| 388 |
|
|---|
| 389 |
<varlistentry id="guc-superuser-reserved-connections" xreflabel="superuser_reserved_connections"> |
|---|
| 390 |
<term><varname>superuser_reserved_connections</varname> (<type>integer</type>)</term> |
|---|
| 391 |
<listitem> |
|---|
| 392 |
<indexterm> |
|---|
| 393 |
<primary>paramètre de configuration <varname>superuser_reserved_connections</varname></primary> |
|---|
| 394 |
</indexterm> |
|---|
| 395 |
<para> |
|---|
| 396 |
Indique le nombre de connecteurs (<quote>slots</quote>) réservés |
|---|
| 397 |
aux connexions des superutilisateurs <productname>PostgreSQL</productname>. |
|---|
| 398 |
Au plus <xref linkend="guc-max-connections"/> connexions peuvent être |
|---|
| 399 |
actives simultanément. Dès que le nombre de connexions |
|---|
| 400 |
simultanément actives atteint <varname>max_connections</varname> moins |
|---|
| 401 |
<varname>superuser_reserved_connections</varname>, les nouvelles |
|---|
| 402 |
connexions ne sont plus acceptées que pour les superutilisateurs. |
|---|
| 403 |
</para> |
|---|
| 404 |
|
|---|
| 405 |
<para> |
|---|
| 406 |
La valeur par défaut est de trois connexions. La valeur doit être plus |
|---|
| 407 |
petite que la valeur de <varname>max_connections</varname>. Ce paramètre |
|---|
| 408 |
ne peut être configuré qu'au lancement du serveur. |
|---|
| 409 |
</para> |
|---|
| 410 |
</listitem> |
|---|
| 411 |
</varlistentry> |
|---|
| 412 |
|
|---|
| 413 |
<varlistentry id="guc-unix-socket-directory" xreflabel="unix_socket_directory"> |
|---|
| 414 |
<term><varname>unix_socket_directory</varname> (<type>string</type>)</term> |
|---|
| 415 |
<listitem> |
|---|
| 416 |
<indexterm> |
|---|
| 417 |
<primary>paramètre de configuration <varname>unix_socket_directory</varname></primary> |
|---|
| 418 |
</indexterm> |
|---|
| 419 |
<para> |
|---|
| 420 |
Indique le répertoire du socket de domaine Unix sur lequel le |
|---|
| 421 |
serveur écoute les connexions des applications client. Par défaut, |
|---|
| 422 |
il s'agit de <filename>/tmp</filename> mais cela peut être |
|---|
| 423 |
modifié au moment de la construction. Ce paramètre ne peut |
|---|
| 424 |
être configuré qu'au lancement du serveur. |
|---|
| 425 |
</para> |
|---|
| 426 |
</listitem> |
|---|
| 427 |
</varlistentry> |
|---|
| 428 |
|
|---|
| 429 |
<varlistentry id="guc-unix-socket-group" xreflabel="unix_socket_group"> |
|---|
| 430 |
<term><varname>unix_socket_group</varname> (<type>string</type>)</term> |
|---|
| 431 |
<listitem> |
|---|
| 432 |
<indexterm> |
|---|
| 433 |
<primary>paramètre de configuration <varname>unix_socket_group</varname> |
|---|
| 434 |
</primary> |
|---|
| 435 |
</indexterm> |
|---|
| 436 |
<para> |
|---|
| 437 |
Configure le groupe propriétaire du socket de domaine Unix |
|---|
| 438 |
(l'utilisateur propriétaire de la socket est toujours l'utilisateur |
|---|
| 439 |
qui lance le serveur). En combinaison avec le paramètre |
|---|
| 440 |
<varname>unix_socket_permissions</varname>, ceci peut être |
|---|
| 441 |
utilisé comme un mécanisme de contrôle d'accès supplémentaire pour |
|---|
| 442 |
les connexions de domaine Unix. Par défaut, il s'agit d'une |
|---|
| 443 |
chaîne vide, ce qui sélectionne le groupe par défaut de l'utilisateur |
|---|
| 444 |
courant. Ce paramètre ne peut être configuré qu'au lancement du |
|---|
| 445 |
serveur. |
|---|
| 446 |
</para> |
|---|
| 447 |
</listitem> |
|---|
| 448 |
</varlistentry> |
|---|
| 449 |
|
|---|
| 450 |
<varlistentry id="guc-unix-socket-permissions" xreflabel="unix_socket_permissions"> |
|---|
| 451 |
<term><varname>unix_socket_permissions</varname> (<type>integer</type>)</term> |
|---|
| 452 |
<listitem> |
|---|
| 453 |
<indexterm> |
|---|
| 454 |
<primary>paramètre de configuration <varname>unix_socket_permissions</varname></primary> |
|---|
| 455 |
</indexterm> |
|---|
| 456 |
<para> |
|---|
| 457 |
Configure les droits d'accès au socket de domaine Unix. Ce socket |
|---|
| 458 |
utilise l'ensemble habituel des droits du système de fichiers |
|---|
| 459 |
Unix. Ce paramètre doit être indiqué sous une forme |
|---|
| 460 |
numérique telle qu'acceptée par les appels système |
|---|
| 461 |
<function>chmod</function> et <function>umask</function> (pour |
|---|
| 462 |
utiliser le format octal, ce nombre doit commencer avec un |
|---|
| 463 |
<literal>0</literal> (zéro)). |
|---|
| 464 |
</para> |
|---|
| 465 |
|
|---|
| 466 |
<para> |
|---|
| 467 |
Les droits par défaut sont <literal>0777</literal>, signifiant que |
|---|
| 468 |
tout le monde peut se connecter. Les alternatives raisonnables sont |
|---|
| 469 |
<literal>0770</literal> (utilisateur et groupe uniquement, voir |
|---|
| 470 |
aussi <varname>unix_socket_group</varname>) et |
|---|
| 471 |
<literal>0700</literal> (utilisateur uniquement) (pour un |
|---|
| 472 |
socket de domaine Unix, seul le droit d'accès en écriture |
|---|
| 473 |
importe ; il n'est donc pas nécessaire de donner ou de révoquer les |
|---|
| 474 |
droits de lecture ou d'exécution). |
|---|
| 475 |
</para> |
|---|
| 476 |
|
|---|
| 477 |
<para> |
|---|
| 478 |
Ce mécanisme de contrôle d'accès est indépendant de celui décrit |
|---|
| 479 |
dans le <xref linkend="client-authentication"/>. |
|---|
| 480 |
</para> |
|---|
| 481 |
|
|---|
| 482 |
<para> |
|---|
| 483 |
Ce paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 484 |
</para> |
|---|
| 485 |
</listitem> |
|---|
| 486 |
</varlistentry> |
|---|
| 487 |
|
|---|
| 488 |
<varlistentry id="guc-bonjour-name" xreflabel="bonjour_name"> |
|---|
| 489 |
<term><varname>bonjour_name</varname> (<type>string</type>)</term> |
|---|
| 490 |
<listitem> |
|---|
| 491 |
<indexterm> |
|---|
| 492 |
<primary>paramètre de configuration <varname>bonjour_name</varname></primary> |
|---|
| 493 |
</indexterm> |
|---|
| 494 |
<para> |
|---|
| 495 |
Indique le nom du broadcast <productname>Bonjour</productname>. |
|---|
| 496 |
Le nom de l'ordinateur est utilisé si ce paramètre est configuré avec |
|---|
| 497 |
une chaîne vide (ce qui est la valeur par défaut). Ce paramètre est |
|---|
| 498 |
ignoré si le serveur n'est pas compilé avec le support |
|---|
| 499 |
<productname>Bonjour</productname>. |
|---|
| 500 |
Ce paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 501 |
</para> |
|---|
| 502 |
</listitem> |
|---|
| 503 |
</varlistentry> |
|---|
| 504 |
|
|---|
| 505 |
<varlistentry id="guc-tcp-keepalives-idle" xreflabel="tcp_keepalives_idle"> |
|---|
| 506 |
<term><varname>tcp_keepalives_idle</varname> (<type>integer</type>)</term> |
|---|
| 507 |
<listitem> |
|---|
| 508 |
<indexterm> |
|---|
| 509 |
<primary>paramètre de configuration <varname>tcp_keepalives_idle</varname></primary> |
|---|
| 510 |
</indexterm> |
|---|
| 511 |
<para> |
|---|
| 512 |
Sur les systèmes supportant l'option de socket <symbol>TCP_KEEPIDLE</symbol>, |
|---|
| 513 |
indique le nombre de secondes avant l'envoi de signaux |
|---|
| 514 |
<quote>keepalives</quote> sur une connexion silencieuse |
|---|
| 515 |
(<foreignphrase>idle</foreignphrase>). La valeur zéro permet d'utiliser |
|---|
| 516 |
celle par défaut du système. Si <symbol>TCP_KEEPIDLE</symbol> n'est pas |
|---|
| 517 |
supporté, ce paramètre doit valoir zéro. Ce paramètre est ignoré pour |
|---|
| 518 |
les connexions réalisées via une socket de domaine Unix. |
|---|
| 519 |
</para> |
|---|
| 520 |
</listitem> |
|---|
| 521 |
</varlistentry> |
|---|
| 522 |
|
|---|
| 523 |
<varlistentry id="guc-tcp-keepalives-interval" xreflabel="tcp_keepalives_interval"> |
|---|
| 524 |
<term><varname>tcp_keepalives_interval</varname> (<type>integer</type>)</term> |
|---|
| 525 |
<listitem> |
|---|
| 526 |
<indexterm> |
|---|
| 527 |
<primary>paramètre de configuration <varname>tcp_keepalives_interval</varname></primary> |
|---|
| 528 |
</indexterm> |
|---|
| 529 |
<para> |
|---|
| 530 |
Sur les systèmes supportant l'option de socket <symbol>TCP_KEEPINTVL</symbol>, |
|---|
| 531 |
indique le temps, en secondes, d'attente d'une réponse à un |
|---|
| 532 |
<quote>keepalive</quote> avant de retransmettre. La valeur zéro permet |
|---|
| 533 |
d'utiliser celle par défaut du système. Si <symbol>TCP_KEEPINTVL</symbol> |
|---|
| 534 |
n'est pas supporté, ce paramètre doit valoir zéro. Ce paramètre est ignoré |
|---|
| 535 |
pour les connexions réalisées via une socket de domaine Unix. |
|---|
| 536 |
</para> |
|---|
| 537 |
</listitem> |
|---|
| 538 |
</varlistentry> |
|---|
| 539 |
|
|---|
| 540 |
<varlistentry id="guc-tcp-keepalives-count" xreflabel="tcp_keepalives_count"> |
|---|
| 541 |
<term><varname>tcp_keepalives_count</varname> (<type>integer</type>)</term> |
|---|
| 542 |
<listitem> |
|---|
| 543 |
<indexterm> |
|---|
| 544 |
<primary>paramètre de configuration <varname>tcp_keepalives_count</varname></primary> |
|---|
| 545 |
</indexterm> |
|---|
| 546 |
<para> |
|---|
| 547 |
Sur les systèmes supportant l'option socket <symbol>TCP_KEEPCNT</symbol>, |
|---|
| 548 |
indique le nombre de <quote>keepalive</quote> qui peuvent être perdus avant |
|---|
| 549 |
de considérer que la connexion est tombée. La valeur zéro permet d'utiliser |
|---|
| 550 |
celle par défaut du système. Si <symbol>TCP_KEEPCNT</symbol> n'est |
|---|
| 551 |
pas supporté, ce paramètre doit valoir zéro. Ce paramètre est ignoré pour |
|---|
| 552 |
les connexions réalisées via une socket de domaine Unix. |
|---|
| 553 |
</para> |
|---|
| 554 |
</listitem> |
|---|
| 555 |
</varlistentry> |
|---|
| 556 |
|
|---|
| 557 |
</variablelist> |
|---|
| 558 |
</sect2> |
|---|
| 559 |
<sect2 id="runtime-config-connection-security"> |
|---|
| 560 |
<title>Sécurité et authentification</title> |
|---|
| 561 |
|
|---|
| 562 |
<variablelist> |
|---|
| 563 |
<varlistentry id="guc-authentication-timeout" xreflabel="authentication_timeout"> |
|---|
| 564 |
<term><varname>authentication_timeout</varname> (<type>integer</type>)</term> |
|---|
| 565 |
<listitem> |
|---|
| 566 |
<indexterm><primary>délai</primary><secondary>authentification client</secondary></indexterm> |
|---|
| 567 |
<indexterm><primary>authentification client</primary><secondary>délai lors de</secondary></indexterm> |
|---|
| 568 |
<indexterm> |
|---|
| 569 |
<primary>paramètre de configuration <varname>authentication_timeout</varname></primary> |
|---|
| 570 |
</indexterm> |
|---|
| 571 |
<para> |
|---|
| 572 |
Temps maximum pour terminer l'authentification du client, en |
|---|
| 573 |
secondes. Si un client n'a pas terminé le protocole d'authentification |
|---|
| 574 |
dans ce délai, le serveur rompt la connexion. Cela protège le serveur |
|---|
| 575 |
des clients bloqués occupant une connexion indéfiniment. La valeur par |
|---|
| 576 |
défaut est d'une minute. |
|---|
| 577 |
Ce paramètre peut être configuré au lancement du serveur et dans le fichier |
|---|
| 578 |
<filename>postgresql.conf</filename>. |
|---|
| 579 |
</para> |
|---|
| 580 |
</listitem> |
|---|
| 581 |
</varlistentry> |
|---|
| 582 |
|
|---|
| 583 |
<varlistentry id="guc-ssl" xreflabel="ssl"> |
|---|
| 584 |
<term><varname>ssl</varname> (<type>boolean</type>)</term> |
|---|
| 585 |
<listitem> |
|---|
| 586 |
<indexterm> |
|---|
| 587 |
<primary>paramètre de configuration <varname>ssl</varname></primary> |
|---|
| 588 |
</indexterm> |
|---|
| 589 |
<para> |
|---|
| 590 |
Active les connexions <acronym>SSL</acronym>. Lire la |
|---|
| 591 |
<xref linkend="ssl-tcp"/> avant de l'utiliser. Désactivé par défaut. |
|---|
| 592 |
Ce paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 593 |
</para> |
|---|
| 594 |
</listitem> |
|---|
| 595 |
</varlistentry> |
|---|
| 596 |
|
|---|
| 597 |
<varlistentry id="guc-ssl-ciphers" xreflabel="ssl_ciphers"> |
|---|
| 598 |
<term><varname>ssl_ciphers</varname> (<type>string</type>)</term> |
|---|
| 599 |
<listitem> |
|---|
| 600 |
<indexterm> |
|---|
| 601 |
<primary>paramètre de configuration <varname>ssl_ciphers</varname></primary> |
|---|
| 602 |
</indexterm> |
|---|
| 603 |
<para> |
|---|
| 604 |
Indique une liste de chiffrements <acronym>SSL</acronym> dont |
|---|
| 605 |
l'utilisation est autorisée sur des connexions sécurisées. Voir la page |
|---|
| 606 |
de manuel <application>openssl</application> pour la liste des |
|---|
| 607 |
chiffrements supportés. |
|---|
| 608 |
</para> |
|---|
| 609 |
</listitem> |
|---|
| 610 |
</varlistentry> |
|---|
| 611 |
|
|---|
| 612 |
<varlistentry id="guc-password-encryption" |
|---|
| 613 |
xreflabel="password_encryption"> |
|---|
| 614 |
<term><varname>password_encryption</varname> (<type>boolean</type>)</term> |
|---|
| 615 |
<listitem> |
|---|
| 616 |
<indexterm> |
|---|
| 617 |
<primary>paramètre de configuration <varname>password_encryption</varname> |
|---|
| 618 |
</primary> |
|---|
| 619 |
</indexterm> |
|---|
| 620 |
<para> |
|---|
| 621 |
Ce paramètre détermine si un mot de passe, indiqué dans |
|---|
| 622 |
<xref linkend="sql-createuser" endterm="sql-createuser-title"/> ou |
|---|
| 623 |
<xref linkend="sql-alteruser" endterm="sql-alteruser-title"/> sans |
|---|
| 624 |
qu'il soit précisé <literal>ENCRYPTED</literal> ou |
|---|
| 625 |
<literal>UNENCRYPTED</literal>, doit être chiffré. |
|---|
| 626 |
Actif par défaut (chiffre le mot de passe). |
|---|
| 627 |
</para> |
|---|
| 628 |
</listitem> |
|---|
| 629 |
</varlistentry> |
|---|
| 630 |
|
|---|
| 631 |
<varlistentry id="guc-krb-realm" xreflabel="krb_realm"> |
|---|
| 632 |
<term><varname>krb_realm</varname> (<type>string</type>)</term> |
|---|
| 633 |
<listitem> |
|---|
| 634 |
<indexterm> |
|---|
| 635 |
<primary>paramètre de configuration <varname>krb_realm</varname></primary> |
|---|
| 636 |
</indexterm> |
|---|
| 637 |
<para> |
|---|
| 638 |
Configure le domaine pour l'authentification Kerberos, GSSAPI et SSPI. |
|---|
| 639 |
Voir <xref linkend="kerberos-auth"/>, <xref linkend="gssapi-auth"/> et |
|---|
| 640 |
<xref linkend="sspi-auth"/> pour les détails. Ce paramètre ne peut |
|---|
| 641 |
être configuré qu'au lancement du serveur. |
|---|
| 642 |
</para> |
|---|
| 643 |
</listitem> |
|---|
| 644 |
</varlistentry> |
|---|
| 645 |
|
|---|
| 646 |
<varlistentry id="guc-krb-server-keyfile" xreflabel="krb_server_keyfile"> |
|---|
| 647 |
<term><varname>krb_server_keyfile</varname> (<type>string</type>)</term> |
|---|
| 648 |
<listitem> |
|---|
| 649 |
<indexterm> |
|---|
| 650 |
<primary>paramètre de configuration <varname>krb_server_keyfile</varname> |
|---|
| 651 |
</primary> |
|---|
| 652 |
</indexterm> |
|---|
| 653 |
<para> |
|---|
| 654 |
Configure l'emplacement du fichier contenant la clé secrète du |
|---|
| 655 |
serveur Kerberos. Voir la <xref linkend="kerberos-auth"/> et la |
|---|
| 656 |
la <xref linkend="gssapi-auth"/> pour les |
|---|
| 657 |
détails. Ce paramètre ne peut être configuré qu'au lancement |
|---|
| 658 |
du serveur. |
|---|
| 659 |
</para> |
|---|
| 660 |
</listitem> |
|---|
| 661 |
</varlistentry> |
|---|
| 662 |
|
|---|
| 663 |
<varlistentry id="guc-krb-srvname" xreflabel="krb_srvname"> |
|---|
| 664 |
<term><varname>krb_srvname</varname> (<type>string</type>)</term> |
|---|
| 665 |
<listitem> |
|---|
| 666 |
<indexterm> |
|---|
| 667 |
<primary>paramètre de configuration <varname>krb_srvname</varname></primary> |
|---|
| 668 |
</indexterm> |
|---|
| 669 |
<para> |
|---|
| 670 |
Configure le nom du service Kerberos. Voir la <xref linkend="kerberos-auth"/> |
|---|
| 671 |
pour les détails. Ce paramètre ne peut être configuré qu'au lancement |
|---|
| 672 |
du serveur. |
|---|
| 673 |
</para> |
|---|
| 674 |
</listitem> |
|---|
| 675 |
</varlistentry> |
|---|
| 676 |
|
|---|
| 677 |
<varlistentry id="guc-krb-server-hostname" xreflabel="krb_server_hostname"> |
|---|
| 678 |
<term><varname>krb_server_hostname</varname> (<type>string</type>)</term> |
|---|
| 679 |
<listitem> |
|---|
| 680 |
<indexterm> |
|---|
| 681 |
<primary>paramètre de configuration <varname>krb_server_hostname</varname></primary> |
|---|
| 682 |
</indexterm> |
|---|
| 683 |
<para> |
|---|
| 684 |
Configure la partie du nom de l'hôte du service principal. |
|---|
| 685 |
Ceci, combiné avec <varname>krb_srvname</varname>, est utilisé pour |
|---|
| 686 |
engendrer le service principal complet, c'est-à-dire |
|---|
| 687 |
<varname>krb_srvname</varname><literal>/</literal><varname>krb_server_hostname</varname><literal>@</literal>REALM. |
|---|
| 688 |
Sans configuration, le comportement par défaut autorise tout service |
|---|
| 689 |
principal correspondant à une entrée dans la table des clés. Voir la |
|---|
| 690 |
<xref linkend="kerberos-auth"/> pour les détails. Ce paramètre ne peut |
|---|
| 691 |
être configuré qu'au lancement du serveur. |
|---|
| 692 |
</para> |
|---|
| 693 |
</listitem> |
|---|
| 694 |
</varlistentry> |
|---|
| 695 |
|
|---|
| 696 |
<varlistentry id="guc-krb-caseins-users" xreflabel="krb_caseins_users"> |
|---|
| 697 |
<term><varname>krb_caseins_users</varname> (<type>boolean</type>)</term> |
|---|
| 698 |
<listitem> |
|---|
| 699 |
<indexterm> |
|---|
| 700 |
<primary>paramètre de configuration <varname>krb_caseins_users</varname></primary> |
|---|
| 701 |
</indexterm> |
|---|
| 702 |
<para> |
|---|
| 703 |
Indique si les noms des utilisateurs Kerberos et GSSAPI doivent être traités en |
|---|
| 704 |
respectant la casse. Désactivé par défaut (insensible à la casse, valeur |
|---|
| 705 |
<literal>off</literal>), ce paramètre ne peut être configuré qu'au |
|---|
| 706 |
lancement du serveur. |
|---|
| 707 |
</para> |
|---|
| 708 |
</listitem> |
|---|
| 709 |
</varlistentry> |
|---|
| 710 |
|
|---|
| 711 |
<varlistentry id="guc-db-user-namespace" xreflabel="db_user_namespace"> |
|---|
| 712 |
<term><varname>db_user_namespace</varname> (<type>boolean</type>)</term> |
|---|
| 713 |
<listitem> |
|---|
| 714 |
<indexterm> |
|---|
| 715 |
<primary>paramètre de configuration <varname>db_user_namespace</varname></primary> |
|---|
| 716 |
</indexterm> |
|---|
| 717 |
<para> |
|---|
| 718 |
Active les noms d'utilisateur par base de données. Désactivé par |
|---|
| 719 |
défaut, ce paramètre ne peut être configuré que dans le fichier |
|---|
| 720 |
<filename>postgresql.conf</filename> ou indiqué sur la ligne de commande. |
|---|
| 721 |
</para> |
|---|
| 722 |
|
|---|
| 723 |
<para> |
|---|
| 724 |
Si ce paramètre est activé, les utilisateurs doivent être créés sous |
|---|
| 725 |
la forme <literal>nomutilisateur@nom_base</literal>. Quand |
|---|
| 726 |
<literal>nomutilisateur</literal> est passé par un client se |
|---|
| 727 |
connectant, <literal>@</literal> et le nom |
|---|
| 728 |
de la base de données sont ajoutés au nom de l'utilisateur et ce nom |
|---|
| 729 |
d'utilisateur spécifique à la base est recherché par le |
|---|
| 730 |
serveur. Lorsque des utilisateurs dont le nom contient un |
|---|
| 731 |
<literal>@</literal> sont créés dans l'environnement SQL, ce nom doit |
|---|
| 732 |
être placé entre guillemets. |
|---|
| 733 |
</para> |
|---|
| 734 |
|
|---|
| 735 |
<para> |
|---|
| 736 |
Ce paramètre activé, il reste possible de créer des utilisateurs |
|---|
| 737 |
globaux ordinaires. Il suffit pour cela d'ajouter |
|---|
| 738 |
<literal>@</literal> au nom du client. Le <literal>@</literal> est |
|---|
| 739 |
supprimé avant que le serveur ne recherche ce nom. |
|---|
| 740 |
</para> |
|---|
| 741 |
|
|---|
| 742 |
<note> |
|---|
| 743 |
<para> |
|---|
| 744 |
Cette fonctionnalité, temporaire, sera supprimée lorsqu'une |
|---|
| 745 |
solution complète sera trouvée. |
|---|
| 746 |
</para> |
|---|
| 747 |
</note> |
|---|
| 748 |
</listitem> |
|---|
| 749 |
</varlistentry> |
|---|
| 750 |
|
|---|
| 751 |
</variablelist> |
|---|
| 752 |
</sect2> |
|---|
| 753 |
</sect1> |
|---|
| 754 |
|
|---|
| 755 |
<sect1 id="runtime-config-resource"> |
|---|
| 756 |
<title>Consommation des ressources</title> |
|---|
| 757 |
|
|---|
| 758 |
<sect2 id="runtime-config-resource-memory"> |
|---|
| 759 |
<title>Mémoire</title> |
|---|
| 760 |
|
|---|
| 761 |
<variablelist> |
|---|
| 762 |
<varlistentry id="guc-shared-buffers" xreflabel="shared_buffers"> |
|---|
| 763 |
<term><varname>shared_buffers</varname> (<type>integer</type>)</term> |
|---|
| 764 |
<listitem> |
|---|
| 765 |
<indexterm> |
|---|
| 766 |
<primary>paramètre de configuration <varname>shared_buffers</varname></primary> |
|---|
| 767 |
</indexterm> |
|---|
| 768 |
<para> |
|---|
| 769 |
Initialise la quantité de mémoire que le serveur de bases de données |
|---|
| 770 |
utilise comme mémoire partagée. La valeur par défaut, en général 32 Mo, |
|---|
| 771 |
peut être automatiquement abaissée si la configuration du noyau ne la supporte |
|---|
| 772 |
pas (déterminé lors de l'exécution de l'<application>initdb</application>). |
|---|
| 773 |
Ce paramètre doit être au minimum de 128 Ko + 16 Ko par |
|---|
| 774 |
<xref linkend="guc-max-connections"/>. (Des valeurs personnalisées de |
|---|
| 775 |
<symbol>BLCKSZ</symbol> agissent sur ce minimum.) Des |
|---|
| 776 |
valeurs significativement plus importantes que ce minimum sont |
|---|
| 777 |
généralement nécessaires pour de bonnes performances. Plusieurs dizaines de |
|---|
| 778 |
méga-octets sont recommandées pour des installations en |
|---|
| 779 |
production. Ce paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 780 |
</para> |
|---|
| 781 |
|
|---|
| 782 |
<para> |
|---|
| 783 |
L'augmentation de ce paramètre peut obliger |
|---|
| 784 |
<productname>PostgreSQL</productname> à réclamer plus de mémoire |
|---|
| 785 |
partagée <systemitem class="osname">System V</systemitem> que ce |
|---|
| 786 |
que la configuration par défaut du système d'exploitation ne peut |
|---|
| 787 |
gérer. Voir la <xref linkend="sysvipc"/> pour de plus amples |
|---|
| 788 |
informations sur l'ajustement de ces paramètres, si nécessaire. |
|---|
| 789 |
</para> |
|---|
| 790 |
</listitem> |
|---|
| 791 |
</varlistentry> |
|---|
| 792 |
|
|---|
| 793 |
<varlistentry id="guc-temp-buffers" xreflabel="temp_buffers"> |
|---|
| 794 |
<term><varname>temp_buffers</varname> (<type>integer</type>)</term> |
|---|
| 795 |
<listitem> |
|---|
| 796 |
<indexterm> |
|---|
| 797 |
<primary>paramètre de configuration <varname>temp_buffers</varname></primary> |
|---|
| 798 |
</indexterm> |
|---|
| 799 |
<para> |
|---|
| 800 |
Configure le nombre maximum de tampons temporaires utilisés par chaque |
|---|
| 801 |
session de la base de données. Ce sont des tampons locaux à |
|---|
| 802 |
la session utilisés uniquement pour accéder aux tables temporaires. La |
|---|
| 803 |
valeur par défaut est de 8 Mo. Ce paramètre peut être modifié à l'intérieur |
|---|
| 804 |
de sessions individuelles mais seulement jusqu'à la première |
|---|
| 805 |
utilisation des tables temporaires dans une session ; les tentatives |
|---|
| 806 |
suivantes de changement de cette valeur n'ont aucun effet sur cette |
|---|
| 807 |
session. |
|---|
| 808 |
</para> |
|---|
| 809 |
|
|---|
| 810 |
<para> |
|---|
| 811 |
Une session alloue des tampons temporaires en fonction des besoins jusqu'à atteindre |
|---|
| 812 |
la limite donnée par <varname>temp_buffers</varname>. Positionner |
|---|
| 813 |
une valeur importante pour les sessions qui ne le nécessitent pas ne |
|---|
| 814 |
coûte qu'un descripteur de tampon, soit |
|---|
| 815 |
environ 64 octets, par incrément de <varname>temp_buffers</varname>. Néanmoins, |
|---|
| 816 |
si un tampon est réellement utilisé, 8192 autres octets sont consommés |
|---|
| 817 |
pour celui-ci (ou, plus généralement, <symbol>BLCKSZ</symbol> octets). |
|---|
| 818 |
</para> |
|---|
| 819 |
</listitem> |
|---|
| 820 |
</varlistentry> |
|---|
| 821 |
|
|---|
| 822 |
<varlistentry id="guc-max-prepared-transactions" xreflabel="max_prepared_transactions"> |
|---|
| 823 |
<term><varname>max_prepared_transactions</varname> (<type>integer</type>)</term> |
|---|
| 824 |
<listitem> |
|---|
| 825 |
<indexterm> |
|---|
| 826 |
<primary>paramètre de configuration <varname>max_prepared_transactions</varname></primary> |
|---|
| 827 |
</indexterm> |
|---|
| 828 |
<para> |
|---|
| 829 |
Configure le nombre maximum de transactions simultanément dans |
|---|
| 830 |
l'état <quote>préparées</quote> (voir <xref |
|---|
| 831 |
linkend="sql-prepare-transaction" endterm="sql-prepare-transaction-title"/>). |
|---|
| 832 |
Zéro désactive la fonctionnalité des |
|---|
| 833 |
transactions préparées. La valeur par défaut est de cinq transactions. |
|---|
| 834 |
Ce paramètre ne peut être configuré qu'au lancement du serveur. |
|---|
| 835 |
</para> |
|---|
| 836 |
|
|---|
| 837 |
<para> |
|---|
| 838 |
Si les transactions préparées ne sont pas utilisées, ce paramètre peut |
|---|
| 839 |
être positionné à zéro. Au contraire, si elles sont utilisées, il |
|---|
| 840 |
peut être intéressant de positionner |
|---|
| 841 |
<varname>max_prepared_transactions</varname> au minimum à |
|---|
| 842 |
<xref linkend="guc-max-connections"/> pour |
|---|
| 843 |
éviter d'indésirables échecs lors de l'étape de préparation. |
|---|
| 844 |
</para> |
|---|
| 845 |
|
|---|
| 846 |
<para> |
|---|
| 847 |
Augmenter ce paramètre peut conduire <productname>PostgreSQL</productname> |
|---|
| 848 |
à réclamer plus de mémoire partagée |
|---|
| 849 |
<systemitem class="osname">System V</systemitem> que ne |
|---|
| 850 |
le permet la configuration par défaut du système d'exploitation. |
|---|
| 851 |
Voir la <xref linkend="sysvipc"/> pour les informations concernant la façon |
|---|
| 852 |
d'ajuster ces paramètres, si nécessaire. |
|---|
| 853 |
</para> |
|---|
| 854 |
</listitem> |
|---|
| 855 |
</varlistentry> |
|---|
| 856 |
|
|---|
| 857 |
<!-- SAS 20070119 : Dans le reste du fichier |
|---|
| 858 |
j'ai traduit merge join par jointure de fusion... |
|---|
| 859 |
Si jointure d'assemblage est préféré, ne pas oublié de corriger le |
|---|
| 860 |
reste du document. |
|---|
| 861 |
Idem pour hachage et découpage. --> |
|---|
| 862 |
<varlistentry id="guc-work-mem" xreflabel="work_mem"> |
|---|
| 863 |
<term><varname>work_mem</varname> (<type>integer</type>)</term> |
|---|
| 864 |
<listitem> |
|---|
| 865 |
<indexterm> |
|---|
| 866 |
<primary>paramètre de configuration <varname>work_mem</varname></primary> |
|---|
| 867 |
</indexterm> |
|---|
| 868 |
<para> |
|---|
| 869 |
Indique la quantité de mémoire que les opérations de tri interne |
|---|
| 870 |
et les tables de hachage peuvent utiliser avant de basculer sur |
|---|
| 871 |
des fichiers disque temporaires. La valeur par défaut est de |
|---|
| 872 |
1 Mo. Pour une requête complexe, |
|---|
| 873 |
il peut y avoir plusieurs opérations de tri ou de hachage exécutées en |
|---|
| 874 |
parallèle ; chacune peut utiliser de la mémoire à hauteur de |
|---|
| 875 |
cette valeur avant de commencer à placer les données dans des |
|---|
| 876 |
fichiers temporaires. De plus, de nombreuses sessions peuvent |
|---|
| 877 |
exécuter de telles opérations simultanément. La mémoire totale |
|---|
| 878 |
utilisée peut, de ce fait, atteindre plusieurs fois la valeur |
|---|
| 879 |
de <varname>work_mem</varname> ; |
|---|
| 880 |
il est nécessaire de garder cela à l'esprit lors du choix de cette |
|---|
| 881 |
valeur. Les opérations de tri sont utilisées pour <literal>ORDER |
|---|
| 882 |
BY</literal>, <literal>DISTINCT</literal> et les jointures de |
|---|
| 883 |
fusion. Les tables de hachage sont utilisées dans les jointures |
|---|
| 884 |
de hachage, les agrégations et le traitement des |
|---|
| 885 |
sous-requêtes <literal>IN</literal> fondés sur le hachage. |
|---|
| 886 |
</para> |
|---|
| 887 |
</listitem> |
|---|
| 888 |
</varlistentry> |
|---|
| 889 |
|
|---|
| 890 |
<varlistentry id="guc-maintenance-work-mem" |
|---|
| 891 |
xreflabel="maintenance_work_mem"> |
|---|
| 892 |
<term><varname>maintenance_work_mem</varname> (<type>integer</type>)</term> |
|---|
| 893 |
<listitem> |
|---|
| 894 |
<indexterm> |
|---|
| 895 |
<primary>paramètre de configuration |
|---|
| 896 |
<varname>maintenance_work_mem</varname></primary> |
|---|
| 897 |
</indexterm> |
|---|
| 898 |
<para> |
|---|
| 899 |
Indique la quantité maximale de mémoire que peuvent utiliser les |
|---|
| 900 |
opérations de maintenance telles que <command>VACUUM</command>, |
|---|
| 901 |
<command>CREATE INDEX</command> et |
|---|
| 902 |
<command>ALTER TABLE ADD FOREIGN KEY</command>. La valeur par |
|---|
| 903 |
défaut est de 16 Mo. |
|---|
| 904 |
Puisque seule une de ces opérations peut être exécutée à la fois |
|---|
| 905 |
dans une session et que, dans le cadre d'un fonctionnement |
|---|
| 906 |
normal, peu d'opérations de ce genre sont exécutées |
|---|
| 907 |
concurrentiellement sur une même installation, il est possible d'initialiser |
|---|
| 908 |
cette variable à une valeur bien plus importante que |
|---|
| 909 |
<varname>work_mem</varname>. Une grande valeur peut |
|---|
| 910 |
améliorer les performances des opérations VACUUM et de la |
|---|
| 911 |
restauration des sauvegardes. |
|---|
| 912 |
</para> |
|---|
| 913 |
</listitem> |
|---|
| 914 |
</varlistentry> |
|---|
| 915 |
|
|---|
| 916 |
<varlistentry id="guc-max-stack-depth" xreflabel="max_stack_depth"> |
|---|
| 917 |
<term><varname>max_stack_depth</varname> (<type>integer</type>)</term> |
|---|
| 918 |
<listitem> |
|---|
| 919 |
<indexterm> |
|---|
| 920 |
<primary>paramètre de configuration <varname>max_stack_depth</varname> |
|---|
| 921 |
</primary> |
|---|
| 922 |
</indexterm> |
|---|
| 923 |
<para> |
|---|
| 924 |
Indique la profondeur maximale de la pile d'exécution du serveur. |
|---|
| 925 |
La configuration idéale pour ce paramètre est la limite réelle |
|---|
| 926 |
de la pile assurée par le noyau (configurée par |
|---|
| 927 |
<literal>ulimit -s</literal> ou équivalent local) à laquelle est |
|---|
| 928 |
soustraite une marge de sécurité d'un Mo environ. La marge de |
|---|
| 929 |
sécurité est nécessaire parce que la profondeur de la pile n'est pas |
|---|
| 930 |
vérifiée dans chaque routine du serveur mais uniquement dans les |
|---|
| 931 |
routines clés potentiellement récursives telles que l'évaluation |
|---|
| 932 |
d'une expression. Le paramétrage par défaut est de 2 Mo, valeur |
|---|