Páginas

terça-feira, 19 de novembro de 2013

[PostgreSQL] - Criando Usuários, Tablespaces, Databases e Schemas


-- Criando Usuário no PostgreSQL --
CREATE ROLE zeus LOGIN
  ENCRYPTED PASSWORD 'Teste,.123'
  SUPERUSER INHERIT CREATEDB CREATEROLE REPLICATION;

-- Criando Tablespaces no PostgreSQL --
CREATE TABLESPACE tbs_zeustab OWNER zeus LOCATION 'C:\postgres\zeus\tablespaces\tab';
CREATE TABLESPACE tbs_zeusindx OWNER zeus LOCATION 'C:\postgres\zeus\tablespaces\indx';
CREATE TABLESPACE tbs_zeuslob OWNER zeus LOCATION 'C:\postgres\zeus\tablespaces\lob';

-- Criando Banco de dados vinculando os tablespace de armazenamento do usuário --
-- criando banco de dados com collate 'UTF8'
CREATE DATABASE zeus
       WITH OWNER = zeus
       ENCODING = 'UTF8'
       TABLESPACE = tbs_zeustab
       LC_COLLATE = 'Portuguese_Brazil.1252'
       LC_CTYPE = 'Portuguese_Brazil.1252'
       CONNECTION LIMIT = -1;

-- criando banco de dados com collate 'LATIN5'
CREATE DATABASE dbteste
 WITH OWNER = postgres
       ENCODING = 'LATIN5'
       TABLESPACE = pg_default
       LC_COLLATE = 'C'
       LC_CTYPE = 'C'
       CONNECTION LIMIT = -1;

-- criando banco de dados com collate 'LATIN1'
CREATE DATABASE dbteste1
  WITH OWNER = postgres
       ENCODING = 'LATIN1'
       TABLESPACE = pg_default
       LC_COLLATE = 'C'
       LC_CTYPE = 'C'
       CONNECTION LIMIT = -1;

-- Criando Schemas no PostgreSQL --

-- Schema: sisimobiliaria
-- DROP SCHEMA sisimobiliaria;
CREATE SCHEMA sisimobiliaria
  AUTHORIZATION zeus;
GRANT ALL ON SCHEMA sisimobiliaria TO zeus;

-- Schema: public
-- DROP SCHEMA public;
CREATE SCHEMA public
  AUTHORIZATION zeus;
GRANT ALL ON SCHEMA public TO zeus;
GRANT ALL ON SCHEMA public TO public;
COMMENT ON SCHEMA public
  IS 'standard public schema';        
    
-- Definido os tablespaces:
-- Para definir o tablespace, você deve procurar dois pontos importantes no seu dump ou criação: o ponto imediatamente anterior antes de criar as tabelas e o ponto imediatamente anterior a criação dos índices e constraints.

Antes da criação das tabelas coloque a seguinte linha:
SET default_tablespace = 'tbs_zeustab';

Antes da criação de índices e constraints, coloque a seguinte linha:
SET default_tablespace = 'tbs_zeusindx';
Banco de dados de Exemplo para PostgreSQL:
https://www.dropbox.com/s/qolrw6w0gcnwqdo/bd_exemplo_postgresql.zip
Documentação Oficial do PostgreSQL:
https://www.dropbox.com/s/1xzc3zx4dl2y98b/pgdocptbr800-1.2.pdf.zip

Nenhum comentário:

Postar um comentário