Difference between revisions of "PowerDNS: Create PowerDNS Database dan User di Percona / MySQL"

From OnnoWiki
Jump to navigation Jump to search
(Created page with "Masuk ke MySQL sudo mysql -u root -p123456 Akan keluar Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 47 Server version: 5.6...")
 
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
Masuk ke MySQL
+
Masuk ke database
  
  sudo mysql -u root -p123456  
+
  sudo mysql -u root -h ::1 -p123456
  
Akan keluar
+
Siapkan tabel
  
  Welcome to the MySQL monitor.  Commands end with ; or \g.
+
  CREATE DATABASE powerdns;
Your MySQL connection id is 47
 
Server version: 5.6.24-72.2 Percona Server (GPL), Release 72.2, Revision 8d0f85b
 
 
   
 
   
  Copyright (c) 2009-2015 Percona LLC and/or its affiliates
+
  GRANT ALL ON powerdns.* TO 'powerdns'@'localhost' \
  Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
+
IDENTIFIED BY 'ubuntu';
 +
 
 +
  FLUSH PRIVILEGES;
 
   
 
   
  Oracle is a registered trademark of Oracle Corporation and/or its
+
  USE powerdns;
affiliates. Other names may be trademarks of their respective
 
owners.
 
 
   
 
   
  Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
+
  CREATE TABLE domains (
 +
  id                    INT AUTO_INCREMENT,
 +
  name                  VARCHAR(255) NOT NULL,
 +
  master                VARCHAR(128) DEFAULT NULL,
 +
  last_check            INT DEFAULT NULL,
 +
  type                  VARCHAR(6) NOT NULL,
 +
  notified_serial      INT UNSIGNED DEFAULT NULL,
 +
  account              VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL,
 +
  PRIMARY KEY (id)
 +
) Engine=InnoDB CHARACTER SET 'latin1';
 
   
 
   
mysql>
+
  CREATE UNIQUE INDEX name_index ON domains(name);
 
+
   
Buat database ‘powerdns’. Database user 'poweruser'. Atau kita dapat membuat sendiri juga
+
  CREATE TABLE records (
 
+
  id                    BIGINT AUTO_INCREMENT,
  CREATE DATABASE powerdns;  
+
  domain_id            INT DEFAULT NULL,
  GRANT ALL ON powerdns.* TO 'poweruser'@'localhost' IDENTIFIED BY 'ubuntu';
+
  name                  VARCHAR(255) DEFAULT NULL,
  FLUSH PRIVILEGES;
+
  type                  VARCHAR(10) DEFAULT NULL,
USE powerdns;
+
  content              VARCHAR(64000) DEFAULT NULL,
CREATE TABLE domains (  
+
  ttl                  INT DEFAULT NULL,
  id                    INT AUTO_INCREMENT,  
+
  prio                 INT DEFAULT NULL,
  name                  VARCHAR(255) NOT NULL,  
+
  change_date          INT DEFAULT NULL,
  master                VARCHAR(128) DEFAULT NULL,  
+
  disabled              TINYINT(1) DEFAULT 0,
  last_check            INT DEFAULT NULL,  
+
  ordername            VARCHAR(255) BINARY DEFAULT NULL,
  type                 VARCHAR(6) NOT NULL,  
+
  auth                  TINYINT(1) DEFAULT 1,
  notified_serial      INT DEFAULT NULL,  
+
  PRIMARY KEY (id)
  account              VARCHAR(40) DEFAULT NULL,  
+
) Engine=InnoDB CHARACTER SET 'latin1';
  PRIMARY KEY (id)  
+
);  
+
CREATE INDEX nametype_index ON records(name,type);
CREATE UNIQUE INDEX name_index ON domains(name);  
+
CREATE INDEX domain_id ON records(domain_id);
 
+
CREATE INDEX ordername ON records (ordername);
CREATE TABLE records (  
+
  id                    INT AUTO_INCREMENT,  
+
CREATE TABLE supermasters (
  domain_id            INT DEFAULT NULL,  
+
  ip                    VARCHAR(64) NOT NULL,
  name                  VARCHAR(255) DEFAULT NULL,  
+
  nameserver            VARCHAR(255) NOT NULL,
  type                  VARCHAR(10) DEFAULT NULL,  
+
  account              VARCHAR(40) CHARACTER SET 'utf8' NOT NULL,
  content               VARCHAR(64000) DEFAULT NULL,  
+
  PRIMARY KEY (ip, nameserver)
  ttl                  INT DEFAULT NULL,  
+
) Engine=InnoDB CHARACTER SET 'latin1';
  prio                  INT DEFAULT NULL,  
+
  change_date          INT DEFAULT NULL,  
+
CREATE TABLE comments (
  disabled              TINYINT(1) DEFAULT 0,  
+
  id                    INT AUTO_INCREMENT,
  ordername             VARCHAR(255) BINARY DEFAULT NULL,  
+
  domain_id            INT NOT NULL,
  auth                 TINYINT(1) DEFAULT 1,  
+
  name                  VARCHAR(255) NOT NULL,
  PRIMARY KEY (id)  
+
  type                  VARCHAR(10) NOT NULL,
);  
+
  modified_at          INT NOT NULL,
CREATE INDEX nametype_index ON records(name,type);  
+
  account               VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL,
CREATE INDEX domain_id ON records(domain_id);  
+
  comment              TEXT CHARACTER SET 'utf8' NOT NULL,
CREATE INDEX recordorder ON records (domain_id, ordername);  
+
  PRIMARY KEY (id)
 +
) Engine=InnoDB CHARACTER SET 'latin1';
 +
 +
CREATE INDEX comments_name_type_idx ON comments (name, type);
 +
CREATE INDEX comments_order_idx ON comments (domain_id, modified_at);
 +
 +
CREATE TABLE domainmetadata (
 +
  id                    INT AUTO_INCREMENT,
 +
  domain_id             INT NOT NULL,
 +
  kind                 VARCHAR(32),
 +
  content              TEXT,
 +
  PRIMARY KEY (id)
 +
) Engine=InnoDB CHARACTER SET 'latin1';
 +
 +
CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind);
 +
 +
CREATE TABLE cryptokeys (
 +
  id                    INT AUTO_INCREMENT,
 +
  domain_id            INT NOT NULL,
 +
  flags                INT NOT NULL,
 +
  active                BOOL,
 +
  content              TEXT,
 +
  PRIMARY KEY(id)
 +
) Engine=InnoDB CHARACTER SET 'latin1';
 +
 +
CREATE INDEX domainidindex ON cryptokeys(domain_id);
 +
 +
CREATE TABLE tsigkeys (
 +
  id                    INT AUTO_INCREMENT,
 +
  name                  VARCHAR(255),
 +
  algorithm            VARCHAR(50),
 +
  secret                VARCHAR(255),
 +
  PRIMARY KEY (id)
 +
) Engine=InnoDB CHARACTER SET 'latin1';
 +
 +
CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm);
 
   
 
   
CREATE TABLE supermasters (
+
QUIT
  ip                    VARCHAR(64) NOT NULL,
 
  nameserver            VARCHAR(255) NOT NULL,
 
  account              VARCHAR(40) NOT NULL,
 
  PRIMARY KEY (ip, nameserver)
 
);
 
 
 
CREATE TABLE comments (
 
  id                    INT AUTO_INCREMENT,
 
  domain_id            INT NOT NULL,
 
  name                  VARCHAR(255) NOT NULL,
 
  type                  VARCHAR(10) NOT NULL,
 
  modified_at          INT NOT NULL,
 
  account              VARCHAR(40) NOT NULL,
 
  comment              VARCHAR(64000) NOT NULL,
 
  PRIMARY KEY (id)
 
);
 
CREATE INDEX comments_domain_id_idx ON comments (domain_id);
 
CREATE INDEX comments_name_type_idx ON comments (name, type);
 
CREATE INDEX comments_order_idx ON comments (domain_id, modified_at);
 
 
 
CREATE TABLE domainmetadata (
 
  id                    INT AUTO_INCREMENT,
 
  domain_id            INT NOT NULL,
 
  kind                  VARCHAR(32),
 
  content              TEXT,
 
  PRIMARY KEY (id)
 
);
 
CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind);
 
 
 
CREATE TABLE cryptokeys (
 
  id                    INT AUTO_INCREMENT,
 
  domain_id            INT NOT NULL,
 
  flags                INT NOT NULL,
 
  active                BOOL,
 
  content              TEXT,
 
  PRIMARY KEY(id)
 
);
 
CREATE INDEX domainidindex ON cryptokeys(domain_id);
 
 
 
CREATE TABLE tsigkeys (
 
  id                    INT AUTO_INCREMENT,
 
  name                  VARCHAR(255),
 
  algorithm            VARCHAR(50),
 
  secret                VARCHAR(255),
 
  PRIMARY KEY (id)
 
);
 
CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm);
 
quit;
 
 
 
 
 
 
 
==Pranala Menarik==
 
 
 
* [[PowerDNS]]
 
* [[IPv6]]
 

Latest revision as of 09:23, 20 February 2019

Masuk ke database

sudo mysql -u root -h ::1 -p123456

Siapkan tabel

CREATE DATABASE powerdns;

GRANT ALL ON powerdns.* TO 'powerdns'@'localhost' \
IDENTIFIED BY 'ubuntu';
 
FLUSH PRIVILEGES;

USE powerdns; 

CREATE TABLE domains (
  id                    INT AUTO_INCREMENT,
  name                  VARCHAR(255) NOT NULL,
  master                VARCHAR(128) DEFAULT NULL,
  last_check            INT DEFAULT NULL,
  type                  VARCHAR(6) NOT NULL,
  notified_serial       INT UNSIGNED DEFAULT NULL,
  account               VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL,
  PRIMARY KEY (id)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE UNIQUE INDEX name_index ON domains(name);

CREATE TABLE records (
  id                    BIGINT AUTO_INCREMENT,
  domain_id             INT DEFAULT NULL,
  name                  VARCHAR(255) DEFAULT NULL,
  type                  VARCHAR(10) DEFAULT NULL,
  content               VARCHAR(64000) DEFAULT NULL,
  ttl                   INT DEFAULT NULL,
  prio                  INT DEFAULT NULL,
  change_date           INT DEFAULT NULL,
  disabled              TINYINT(1) DEFAULT 0,
  ordername             VARCHAR(255) BINARY DEFAULT NULL,
  auth                  TINYINT(1) DEFAULT 1,
  PRIMARY KEY (id)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE INDEX nametype_index ON records(name,type);
CREATE INDEX domain_id ON records(domain_id);
CREATE INDEX ordername ON records (ordername);

CREATE TABLE supermasters (
  ip                    VARCHAR(64) NOT NULL,
  nameserver            VARCHAR(255) NOT NULL,
  account               VARCHAR(40) CHARACTER SET 'utf8' NOT NULL,
  PRIMARY KEY (ip, nameserver)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE TABLE comments (
  id                    INT AUTO_INCREMENT,
  domain_id             INT NOT NULL,
  name                  VARCHAR(255) NOT NULL,
  type                  VARCHAR(10) NOT NULL,
  modified_at           INT NOT NULL,
  account               VARCHAR(40) CHARACTER SET 'utf8' DEFAULT NULL,
  comment               TEXT CHARACTER SET 'utf8' NOT NULL,
  PRIMARY KEY (id)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE INDEX comments_name_type_idx ON comments (name, type);
CREATE INDEX comments_order_idx ON comments (domain_id, modified_at);

CREATE TABLE domainmetadata (
  id                    INT AUTO_INCREMENT,
  domain_id             INT NOT NULL,
  kind                  VARCHAR(32),
  content               TEXT,
  PRIMARY KEY (id)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE INDEX domainmetadata_idx ON domainmetadata (domain_id, kind);

CREATE TABLE cryptokeys (
  id                    INT AUTO_INCREMENT,
  domain_id             INT NOT NULL,
  flags                 INT NOT NULL,
  active                BOOL,
  content               TEXT,
  PRIMARY KEY(id)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE INDEX domainidindex ON cryptokeys(domain_id);

CREATE TABLE tsigkeys (
  id                    INT AUTO_INCREMENT,
  name                  VARCHAR(255),
  algorithm             VARCHAR(50),
  secret                VARCHAR(255),
  PRIMARY KEY (id)
) Engine=InnoDB CHARACTER SET 'latin1';

CREATE UNIQUE INDEX namealgoindex ON tsigkeys(name, algorithm);

QUIT