Re: comment adapter la syntaxe pour PgSQL
----- Mail original -----
> De: "Jean-Michel OLTRA" <jm.oltra.antispam@espinasse.net>
> À: debian-user-french@lists.debian.org
> Envoyé: Mercredi 17 Janvier 2018 00:24:42
> Objet: Re: comment adapter la syntaxe pour PgSQL
>
>
> Bonjour,
>
>
> Le mardi 16 janvier 2018, Bernard Schoenacker a écrit...
>
>
> > mysql -u root -p
>
> su - postgres
>
> > mysql> CREATE USER 'postfix'@'localhost' IDENTIFIED BY
> > 'mot_de_passe';
>
> Perso, je crée un utilisateur ayant mon login (jm) et je me mets
> proprio
> (owner) de mes bases
>
> Toujours en user postgres :
>
> createuser -P bernard
> createuser --pwprompt --no-createdb --no-createrole --no-superuser
> postfix
> createdb --encoding=utf8 --owner=bernard postfix
>
> > mysql> GRANT USAGE ON * . * TO 'postfix'@'localhost' IDENTIFIED BY
> > 'mot_de_passe';
> > mysql> CREATE DATABASE `postfix` ;
> > mysql> GRANT ALL PRIVILEGES ON `postfix` . * TO
> > 'postfix'@'localhost';
> > mysql> FLUSH PRIVILEGES;
> > mysql> quit
>
> > //
> > CREATE USER 'postfix'@'localhost' IDENTIFIED BY '***';
>
> > GRANT USAGE ON * . * TO 'postfix'@'localhost' IDENTIFIED BY '***'
> > WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0
> > MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
>
> > GRANT ALL PRIVILEGES ON `postfix` . * TO 'postfix'@'localhost';
>
> > // importer les tables postfix ou :
> > USE postfix;
> > CREATE TABLE `domaines` (
> > `domaine` varchar(255) NOT NULL default '',
> > `etat` tinyint(1) NOT NULL default '1',
> > PRIMARY KEY (`domaine`)
> > ) ENGINE=InnoDB;
> > CREATE TABLE `comptes` (
> > `email` varchar(255) NOT NULL default '',
> > `password` varchar(255) NOT NULL default '',
> > `quota` int(10) NOT NULL default '0',
> > `etat` tinyint(1) NOT NULL default '1',
> > `imap` tinyint(1) NOT NULL default '1',
> > `pop3` tinyint(1) NOT NULL default '1',
> > PRIMARY KEY (`email`)
> > ) ENGINE=InnoDB;
> > CREATE TABLE `alias` (
> > `source` varchar(255) NOT NULL default '',
> > `destination` text NOT NULL,
> > `etat` tinyint(1) NOT NULL default '1',
> > PRIMARY KEY (`source`)
> > ) ENGINE=InnoDB;
>
> Si 'bernard' est propriétaire de la base, tu peux te connecter dessus
> avec :
> psql postfix
> puis
> postfix # grant select, update, delete, insert on domaines to
> postfix;
> postfix # grant select, update, delete, insert on comptes to postfix;
> postfix # grant select, update, delete, insert on alias to postfix;
>
> En fonction des nécessités, tu supprimes des droits dans ce que j'ai
> indiqué. Je suppose que postfix aura besoin du select. Mais du
> insert,
> update, delete ?
>
> Pour la création de table, je pense que c'est pareil, à part que tu
> évites
> le engine=InnoDB à la fin !
>
> > INSERT INTO `postfix`.`comptes` ( `email` , `password` , `quota` ,
> > `etat` , `imap` , `pop3` ) VALUES ('happy-tux@happy-tux.org',
> > ENCRYPT( 'mon_beau-mot-de-passe' ) , '0', '1', '1', '1');
>
> Il faut ajouter l'extension pgcrypto à la base.
>
> su - postgres
> psql postfix
> postfix= #create extension pgcrypto
>
> Mais le crypt() de postgresql prend un 'salt' en plus comme argument
> :
> select crypt('le-mot-de-passe', 'le-salt');
> Je ne sais pas si tu peux l'utiliser ?
>
> > service mysql reload
>
> service postgresql reload
>
> > INSERT INTO `postfix`.`alias` ( `source`, `destination` , `etat` )
> > VALUES ('bernard.schoenacker@happy-tux.org',
> > 'happy-tux@happy-tux.org', '1');
>
> ok.
>
> Question bête: pourquoi vouloir passer de mariadb à postgres ?
>
> --
> jm
>
bonjour,
la doc officielle de mailman3 passe à pgSQL, et par conséquence
je bascule vers pgsql
slt
bernard
Reply to: