Archives pour Mercredi 3 février 2010

FreeBSD : jail PostgreSQL

Pour pouvoir exécuter un serveur PostgreSQL sous une jail FreeBSD, il est nécessaire d’autoriser le support de la mémoire partagée (SHM). Il convient d’activer le flag dans /etc/rc.conf :

jail_sysvipc_allow="YES"

Si cela n’est pas fait, l’initialisation de l’espace de stockage échoue de cette façon :

sql# /usr/local/etc/rc.d/postgresql oneinitdb
The files belonging to this database system will be owned by user "pgsql".
This user must also own the server process.</p>
The database cluster will be initialized with locale C.
The default text search configuration will be set to "english".
creating directory /usr/local/pgsql/data ... ok
creating subdirectories ... ok
selecting default max_connections ... 10
selecting default shared_buffers ... 400kB
creating configuration files ... ok
creating template1 database in /usr/local/pgsql/data/base/1 ... FATAL:  could not create shared memory segment: Function not implemented
DETAIL:  Failed system call was shmget(key=1, size=1622016, 03600).
child process exited with exit code 1
initdb: removing data directory "/usr/local/pgsql/data"

Sphider : patch pour connexion SQL non persistante

Sphider est un indexeur et un moteur de recherche PHP, intégrable idéalement dans de petits sites Web. J’ai remarqué que l’outil utilisait une connexion SQL persistante, ce qui est problématique dans le cas d’un serveur mutualisé.

Je propose donc ce patch chargé de gérer les connexions SQL non persistantes (option de configuration SQL_PCONNECT dans le fichier settings/database.php) :

sphider-1.3.5 # cat settings/database.php
<?php
define ('SQL_DB', 'sphider');
define ('SQL_USER', 'root');
define ('SQL_PASS', '');
define ('SQL_HOST', 'localhost');
define ('SQL_TABLE_PREFIX', '');
define ('SQL_PCONNECT', 0);

$mysql_table_prefix = SQL_TABLE_PREFIX;
?>

Le patch est à appliquer sur la version 1.3.5 de Sphider :

sphider-1.3.5 # patch -p1 < patch-sphider-sql_connect.sql
patching file admin/admin.php
patching file admin/auth.php
patching file admin/install.php
patching file admin/spider.php
patching file include/commonfuncs.php
patching file include/js_suggest/suggest.php
patching file search.php
patching file settings/database.php

patch-sphider-1.3.5-sql_connect.gz

Haut de page