quinta-feira, 28 de janeiro de 2010

História do PostgreSQL


Bom hoje vo comenta sobre o surgimento do PostgreSQL (conhecido anteriormente como Postgres95) derivou do projeto POSTGRES da universidade de Berkley, cuja última versão foi a 4.2. O POSTGRES foi originalmente patrocinado pelo DARPA (Agência de Projetos de Pesquisa Avançada para Defesa), ARO (Departamento de Pesquisa Militar), NSF (Fundação Cinetífica Nacional) e ESL Inc. A implementação do projeto POSTGRES iniciou em 1986, já em 87 tornou-se operacional. A primeira versão lançada para o público externo foi em 1989. Devido a uma crítica feita ao seu sistema de regras, o POSTGRES teve essa parte re-implementada e lançada em uma segunda versão em 1990. Em 1991 foi lançada a versão 3, com melhorias no executor de consultas e algumas partes do código foram re-escritas. As versões subsequentes, até o Postgres95, foram focadas em confiabilidade e portabilidade. O POSTGRES foi utilizado para diversos sistemas de pesquisa e de produção, uma aplicação de análise financeira, um banco com rotas de asteróides, e diversos sistemas de informações geográficas. O código do POSTGRES foi aproveitado em um produto comercializado pela Illustra Information Technologies (posteriormente incorporada à Informix, que agora pertence à IBM). 

A versão seguinte, o Postgres95, teve mudanças radicais em relação ao projeto original. O seu código foi totalmente revisado, o tamanho dos fontes foi reduzido em 25%, e a linguagem SQL foi implementada como interface padrão. A performance foi consideravelmente melhorada e vários recursos foram adicionados. Em 1996 o nome Postgres95 tornou-se inadequado, o projeto foi rebatizado "PostgreSQL", para enfatizar a relação do POSTGRES original com a linguagem SQL. A numeração da versão voltou a seguir o padrão anterior ao Postgres95 (considerada a 5.0), e a primeira versão do PostgreSQL foi a 6.0. Enquanto a ênfase do Postgres95 tinha sido a correção de falhas e otimização do código, o desenvolvimento das primeiras versões do PostgreSQL foi orientada à melhoria de recursos e implementação de novos recursos, sempre seguindo os padrões de SQL anteriormente estabelecidos.

O PostgreSQL hoje

A equipe do projeto cresceu e se espalhou pelo mundo. O Grupo Global de Desenvolvimento do PostgreSQL tem membros nos Estados Unidos, Canadá, Japão, Russia, vários países da Europa e alguns outros. Esse grupo é formado essencialmente por empresas especializadas em PostgreSQL, empresas usuárias do sistema, além dos pesquisadores acadêmicos e programadores independentes. Além da programação, essa comunidade é responsável pela documentação, tradução, criação de ferramentas de modelagem e gerenciamento, e elaboração de extensões e acessórios. 

Pela riqueza de recursos e conformidade com os padrões, ele é um SGBD muito adequado para o estudo universitário do modelo relacional, além de ser uma ótima opção para empresas implementarem soluções de alta confiabilidade sem altos custos de licenciamento. É um programa distribuído sob a licença BSD, o que torna o seu código fonte disponível e o seu uso livre para aplicações comerciais ou não. O PostgreSQL foi implementado em diversos ambientes de produção no mundo, entre eles, um bom exemplo do seu potencial é o banco de dados que armazena os registros de domínio .org, mantido pela empresa Afilias.

Site Oficial - (http://www.postgresql.org)
Site de marketing - (http://advocacy.postgresql.org/?lang=br)
Site nacional - (http://www.postgresql.org.br)
Lista de discussão nacional - (http://br.groups.yahoo.com/group/postgresql-br

Espero que gostem ai é um Banco de Dados muito bom. Recomendo.

quarta-feira, 27 de janeiro de 2010

SQLite


Bom pessoal hoje falarei sobre SQLite a respeito de um Banco de Dados que é Embutido e não necessita de um Server atráz rodando para rodar e muito simples... bom ele é uma biblioteca em linguagem C que implementa um Banco de Dados SQL embutido. Programas que usam a biblioteca SQLite podem ter acesso a Banco de Dados SQL sem executar um processo RDBMS separado.
O SQLite não é uma biblioteca de cliente usada para conectar com um grande servidor de banco de dados, mas sim o servidor. A biblioteca SQLite lê e escreve diretamente para e do arquivo do Banco de Dados no disco.
O uso do SQLite é recomendado onde a simplicidade da administração, implementação e manutenção são mais importantes que incontáveis recursos que SGBDs mais voltados para aplicações complexas possivelmente implementam. Entretando situações onde a simplicidade é a melhor escolha são muito mais freqüentes do que pode-se imaginar.
Exemplos de uso do SQLite são, não restrito a :sites com menos de cem mil requisições por dia, dispositivos e sistemas embarcados, aplicações desktop, ferramentas estatísticas e de análise, aprendizado de banco de dados,implementação de novas extensões de SQL.
Não se recomenda o uso do SQLite para Sites com:muitos acessos, grande quantidades de dados (talvez maior que algumas duzias de gigabytes), sistemas com grande concorrência, aplicações Cliente/Servidor.

Bom espero que seja útil o que eu descrevi ai a vocês.. bom eu usei algumas vezes e não me deu problema então está eu recomendo.
Uma tela do Banco de Dados em execução simples e fácil acesso.

terça-feira, 26 de janeiro de 2010

MySQL - Backup e Restaure

Existem inúmeras maneiras de se fazer backup no MySQL. Creio que o modo mais utilizado seja o Backup feito pelo comando 'mysqldump', que permite uma combinação enorme de parâmetros.
Em todos os comandos abaixo, substitua as palavras 'usuario', 'senha' e 'arquivo_saida'.

Backup de todos os bancos existentes com conteúdo e estrutura (-A equivale a --all-databases):

$ mysqldump -u usuario --password=senha --all-databases > arquivo_saida OU $ mysqldump -u usuario --password=senha -A > arquivo_saida

Backup só das estruturas de todos os bancos (-d : sem os conteúdos)

$ mysqldump -u usuario --password=senha -A -d > arquivo_saida

Backup só dos dados de todos os bancos (-c: usa comandos 'insert'; -t: não escreve comandos 'create table'; -e: gera comandos mais compactos e mais rápidos de 'insert')

$ mysqldump -u usuario --password=senha -c -t -e -A > arquivo_saida

Caso você queira especificar o nome de um banco de dados (ou seja, você não quer fazer de todos os bancos existentes) substitua o parâmetro '-A' citado nos exemplos anteriores por:

databases DB1 DB2 .... , onde DB1 DB2 ... são os nomes dos bancos de dados


Exemplo:

$ mysqldump -u usuario --password=senha -c -t -e --databases DB1 DB2


Caso você queira fazer backup de apenas algumas tabelas de um banco específico:

$ mysqldump -u usuario --password=senha [opções] DB1 [nome das tabelas]


onde DB1 é o nome do banco que você quer.

Criando um backup do seu banco de dados MySQL usando SSH

Se você possui acesso shell em sua conta de hospedagem, pode facilmente fazer backup do seu banco de dados com o seguinte comando:

# mysql -u username -p database_name > filename.sql

Onde:

username = usuário root ou usuário com privilégios suficientes para fazer este backup;
database_name = o nome do banco de dados que deseja criar;
filename = nome do arquivo de saída com extensão sql;

Restaurando um backup MySQL usando SSH

Para restaurar, o procedimento é quase como o comando acima, você só precisa substituir um símbolo. Fácil, né?

# mysql -u username -p database_name < username =" usuário" database_name =" o" filename =" nome"> DUMP.sql
Restore:mysql -u USUARIO -pSENHA BANCO <>

A forma mais facil de fazer um backup de uma base de dados em MySQL é utilizar o comando mysqladmin:

mysqldump -u [username] -p [password] [databasename] > [backupfile.sql]

[username] - Nome de Utilizador da base de dados;

[password] - Palavra passe do Utilizador;

[databasename] - nome da base de dados;

[backupfile.sql] - nome do ficheiro onde se pretende guardar a informação;

Para restaurar a base de dados utiliza-se o comando mysql:


mysql -u [username] -p [password] [databasename] < [backupfile.mysql]

PostgreSQL – Backup e Restaure

  • Backup/Dump uma base
    /usr/local/pgsql/bin/pg_dump BASE > arquivo_backup.sql
  • Importando a base
    /usr/local/pgsql/bin/psql -d BASE -f ARQUIVO.sql

Veja como importar arquivo SQL utilizando console PSQL.

psql -d BASEDEDADOS -f ARQUIVO.SQL -U USUARIO

Exemplo:

#su postgres
#psql -d bancoxyz -f meubanco.SQL -U postgres

para ver o que está sendo executado, adicione: -a

domingo, 24 de janeiro de 2010

Alguns Programas para Migrações de Dados

Aqui vou postar alguns programas atuais para fazer as migrações:

Está ferramenta que permite uma confiável migração/conversão bi-direcional entre bases de dados Microsoft Access e PostgreSQL.

Permite a conversão de:
  • Microsoft Access para PostgreSQL;
  • Microsoft Access para PHP Script;
  • Microsoft Access para Microsoft Access;
  • PostgreSQL para Microsoft Access;
  • PostgreSQL para PostgreSQL;
  • PostgreSQL para PHP Script.

Algumas funcionalidades desse software

  • Conversão de dados em alta velocidade/performance;
  • Conversão segura - Integridade da Base de Dados;
  • Migração de dados utilizando condicionais;
  • Suporte a arquitetura UNICODE;
  • Modo de linhas de comando;
  • Agendamento flexível;
  • Interface amigável e de fácil utilização.
  • Não converte tabelas (ocultas) de sistema.
  • Roda em Windows NT, 2000, Millenium, XP, Vista
  • Disponível nos idiomas Inglê
  • Shareware - grátis para testar e avaliar

DBConvert for MS SQL & PostgreSQL2.2.1

Ferramenta que permite uma confiável migração / conversão bi-direcional entre bases de dados Microsoft SQL Server e PostgreSQL

Permite a conversão de:

  • Microsoft SQL Server para PostgreSQL;
  • Microsoft SQL Server para Microsoft SQL Server;
  • Microsoft SQL Server para PHP Script;
  • PostgreSQL para Microsoft SQL Server;
  • PostgreSQL para PostgreSQL;

Algumas funcionalidades desse software

  • Conversão de dados em alta velocidade / performance;
  • Conversão segura - Integridade da base de dados;
  • Migração de dados utilizando condicionais;
  • Suporte a arquitetura UNICODE;
  • Modo de linhas de comando;
  • Agendamento flexível;
  • Interface amigável e de fácil utilização;
  • Não converte tabelas (ocultas) de sistema;
  • Não suporta Microsoft SQL Server Desktop Engine (MSDE);
  • Roda em Windows NT, 2000, Millenium, XP, Vista;
  • Disponível nos idiomas Inglês;
  • Shareware - grátis para testar e avaliar;

DBConvert for MySQL & PostgreSQL3.3.1

Ferramenta que permite uma confiável migração / conversão bi-direcional entre bases de dados MySQL e PostgreSQL.

Permite a conversão de:

  • MySQL para PostgreSQL;
  • MySQL para PostgreSQL PHP Script;
  • MySQL para MySQL;
  • MySQL para MySQL PHP Script;
  • PostgreSQL para MySQL;
  • PostgreSQL para MySQL PHP Script;
  • PostgreSQL para PostgreSQL;
  • PostgreSQL para PostgreSQL PHP Script.


Algumas funcionalidades desse software

  • Conversão de dados em alta velocidade / performance;
  • Conversão segura - Integridade da base de dados;
  • Migração de dados utilizando condicionais;
  • Suporte a arquitetura UNICODE;
  • Modo de linhas de comando;
  • Agendamento flexível;
  • Interface amigável e de fácil utilização;
  • Não converte tabelas (ocultas) de sistema;
  • Roda em Windows NT, 2000, Millenium, XP, Vista;
  • Disponível nos idiomas Inglês;
  • Shareware - grátis para testar e avaliar;

DBSync for MS SQL & PostgreSQL2.2.1

Ferramenta que permite uma confiável conversão / sincronização bi-direcional entre bases de dados MS SQL Server e PostgreSQL.

Permite a conversão de:

  • Microsoft SQL Server para PostgreSQL;
  • Microsoft SQL Server para Microsoft SQL Server;
  • PostgreSQL para Microsoft SQL Server;
  • PostgreSQL para PostgreSQL.

Algumas funcionalidades desse software

  • Conversão de dados em alta velocidade / performance;
  • Conversão segura - Integridade da base de dados;
  • Migração de dados utilizando condições;
    Sincronização de updates, inserts e drop tables / fields;
  • Remapeamento de todos os objetos do banco (tabelas, campos, índices e chaves estrangeiras) para sincronização;
  • Suporte a arquitetura UNICODE;
  • Personalize o processo de sincronização de sua base de dados;
  • Modo de linhas de comando;
  • Agendamento flexível;
  • Interface amigável e de fácil utilização;
  • Não converte tabelas (ocultas) de sistema;
  • Não suporta Microsoft SQL Server Desktop Engine (MSDE).
  • Roda em Windows NT, 2000, Millenium, XP, Vista;
  • Disponível nos idiomas Inglês;
  • Shareware - grátis para testar e avaliar;

DBSync for MySQL & PostgreSQL 3.3.1

Ferramenta que permite uma confiável conversão / sincronização bi-direcional entre bases de dados MySQL e PostgreSQL.

Permite a conversão de:

  • MySQL para PostgreSQL;
  • MySQL para MySQL;
  • PostgreSQL para MySQL;
  • PostgreSQL para PostgreSQL.

Algumas funcionalidades desse software

  • Conversão de dados em alta velocidade / performance;
  • Conversão segura - Integridade da base de dados;
  • Migração de dados utilizando condições;
  • Sincronização de updates, inserts e drop tables / fields;
  • emapeamento de todos os objetos do banco (tabelas, campos, índices e chaves estrangeiras) para sincronização;
  • Suporte a arquitetura UNICODE;
  • Personalize o processo de sincronização de sua base de dados;
  • Modo de linhas de comando;
  • Agendamento flexível;
  • Interface amigável e de fácil utilização;
  • Não converte tabelas (ocultas) de sistema;
  • Roda em Windows NT, 2000, Millenium, XP, Vista;
  • Disponível nos idiomas Inglês;
  • Shareware - grátis para testar e avaliar;

Access to MySQL3.0.0.117

Ferramenta para a converção de bancos de dados Microsoft Access para MySQL e com a ajuda de um Wizard. Access to MySQL é um pequeno programa que converte bancos de dados em Microsoft Access para MySQL. Sua interface é baseada na simplicidade dos Wizards (aquele passo-a-passo onde cada informação é explicada) para que qualquer pessoa consiga realizar a conversão sem cometer enganos.

Permite a conversão de:

  • MySQL para PostgreSQL;

Algumas funcionalidades desse software

  • Transfere diretamente os dados de um servidor para o outro;
  • Seleciona tabelas, campos e senhas para a transferência;
  • Suporta compartilhamento de segurança ou definido pelo usuário.
  • Roda em Windows 95, 98, NT, 2000, Millenium, XP, 2003
  • Disponível nos idiomas Inglês
  • Freeware - grátis;

Migrando MySQL para PostgreSQL

MySQL e PostgreSQL esses Banco de Dados você pode já ter lido vários artigos sobre esse assunto de migração, mas provavelmente conseguiu apenas fragmentos da informação necessária e não soube nem por onde começar estou certo? haha bom mas vamos pra luta e chego a hora de colocar tudo junto e na prática.

Você tem um projeto/sistema rodando no MySQL e de repente você descobre que você precisa migrar para PostgreSQL. E você se depara com um SQL diferente para cada plataforma, o MySQL trabalha com SQL e o PostgreSQL trabalha com PL/SQL e ai?, bom mas o detalhe que você não tem tempo para reescrever o código do zero e, logicamente, se você tiver tempo de reestruturar o seu projeto para PostgreSQL, o seu Data Base vai ficar mais organizado e, como um bom Data Base deve ser com relacionamento entre Tabelas, Trigger, Functions e etc.

Na verdade, pode haver boas razões para migrar um Data Base de MySQL para PostgreSQL a segurança, desenpenho ou mesmo por um previlégio que so o outro banco possua e não pela falta de tempo de rescrever as tabelas...

E ná verdade o Postgre você poderá vender o seu produto com total tranquilidade (PostgreSQL é licenciada BSD, o diferente de MySQL) e você pode encontrar artigos "Migrando MySQL para PostgreSQL" na web, mas.. você não vai encontrar nenhuma "Migrando PostgreSQL para MySQL" sinal que ele é bom.

PostgreSQL não pode ser apenas mais um péssimo banco porque o que eu sei e andei lendo que vários softwares pupaleres de nome no mercado tem a base de dados do Postgre vou citar uns Skype, Cisco, Juniper, IMDb, Pandora ou NOVA TV decidiram confiar nele, além de a Sun Microsystems tê-lo tornado como base de dados de escolha (e uma também que em janeiro de 2008 PostgreSQL comprou o MySQL UAHSUsuahs).

No PostgreSQL você ainda pode sentir um pouco como uma pessoa com segurança particular. Existem alguns grandes projetos que já reconheceram suas qualidades e que, embora o MySQL tenha sido sua primeira escolha de Banco de Dados, e eles estão demonstrando esforço para fazer tudo funcionar.

Mas Voltando...

Convertendo Base de Dados MySQL para PostgreSQL

Primeiramente vamos fazer Backup de nossa Data Base MySQL com o software mysqldump do próprio MySQL:


mysqldump --compatible=postgresql bancodedados > bkp-bancodedados.sql

Convertendo caracteres para o SQL ficar funcional no PostgreSQL:

sed "s/\\\'/\'\'/g" bkp-bancodedados.sql

Este processo vai demorar muito tempo porque o software "sed" varrerá todo o arquivo para fazer a conversão

Colocando as coisas para funcionar: importando para o PosgreSQL

psql -h server -d databasename -U username -W

Com isso você acabo de migrar a sua estrutura de Dados de MySQL para PostgreSQL

Alguns Likes do PostgreSQL

MySQL

Comunidade Brasileira de PostgreSQL

PostgreSQL: The world's most advanced open source database

PGCon Brasil

PostgreSQL Documentation

Migrações de Dados


Bom Migração de Dados presumo que você que esteja lendo ai tenha um pouco de conheçecimento da Tecnologia Básica de Banco de Dados. Então com o aumento de computadores e aplicativos nas ultimas décadas, foram criandas um grande números de diferentes tecnolígias de Gerenciamento de Dados. E essas Tecnológias vão de sistemas com arquivos de Textos até Sistemas Relacionais de Banco de Dados de grande porte indempendentemente do tipo de armazenamento de dados existentes, o que na época era a melhor solução hoje está desatualizando não é único motivo para que uma empresa decida migrar seus dados de um Sistema Gerencial de Bando de Dados Relacional (SGBDR) para o outro. Bom aqui para frente vou fazer vários exemplos de linguagens utilizando Migrações de Dados, aguardem os tópicos.

Uma conclusão bem rápida a vocês ficarem entendendo melhor então, para a migração de um Banco de Dados de uma tecnologia para outra existem diversos fatores que devem ser levados em consideração. Entre eles, os motivos para migrar e se a migração é a melhor solução. È necessário fazer uma análize antes completa do ambiente antigo quanto do novo para determinar se a migração pode ser feita com um risco razoável. Bom está ai a dica antes de tomar a decisão de migrar vários BACKUP's é isso ai.

Obrigado.
 Copyright © 2008-2010 All Right Reserved - Todos os Direitos Reservados Elder Stroparo