Manual:PostgreSQL/pt-br

O propósito desta página é reunir informações e experiências sobre o uso do MediaWiki com PostgreSQL.

O MediaWiki suporta o Postgres desde a versão 1.7 e a 1.16 contém somente alguns pequenos erros.

MediaWiki requer Postgres 8.1 ou posterior, e o suporte a bancos PG deve estar habilitado no PHP.

A maioria dos códigos de manutenção comuns funcionam no Postgres, embora alguns dos mais obscuros possam apresentar problemas.

PostgreSQL é uma boa escolha para o MediaWiki?
A Wikipedia usa MySQL, então o MediaWiki é mais testado com MySQL do que com PostgreSQL. O suporte ao PostgreSQL é mantido por voluntários, e a maioria das funcionalidades funciona bem.

De MySQL para PostgreSQL
A ferramenta mwdumper pode auxiliar.

Há também a mediawiki_mysql2postgres.pl em maintainance/postgres mas não é seguro se ela realmente funciona.

De PostgreSQL para MySQL
Geralmente, essa migração não é recomendada, porque a conversão de tipos de dados Postgre para MySQL não é tão simples quanto o contrário. Há, porém, alguns códigos que podem funcionar.

tsearch2
O módulo tsearch2 precisa de ser instalado para fazer a busca em texto integral em sua wiki. Antes do Postgres 8.3, era um módulo separado que necessitava de uma instalação à parte, mas a partir do Postgres 8.3 ele foi incluído no pacote e não requer nenhum procedimento especial.

A instalação do tsearch2 em versões mais antigas depende de seu sistema operacional. Um vez instalado o tsearch2, você precisa de instalá-lo no banco de dados que irá utilizar. Isso geralmente envolve executar o script tsearch2.sql como superusuário dentro do banco de dados onde quer instalá-lo. Por exemplo, se seu arquivo tsearch2.sql está localizado em /usr/share/postgresql/contrib/tsearch2.sql, você tem um superusuário chamado  postgres, e você está adicionando tsearch2 ao banco de dados wikidb, deve usar o seguinte comando:

psql -U postgres wikidb -f /usr/share/postgresql/contrib/tsearch2.sql

Note que este comando pode gerar vários avisos, mas eles podem em geral ser ignorados. Você pode testar se tsearch2 foi corretamente instalado executando o seguinte:

psql -U postgres wikidb -c "select relname from pg_class where relname ~ '^pg_ts'" a Você deve ver quatro tabelas começando com "pg_ts". Senão, o tsearch provavelmente não foi instalado completamente.