-- phpMyAdmin SQL Dump -- version 4.7.8 -- https://www.phpmyadmin.net/ -- -- Hôte : 127.0.0.1 -- Généré le : ven. 11 jan. 2019 à 18:07 -- Version du serveur : 5.7.21 -- Version de PHP : 5.6.33 -- SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; -- SET time_zone = "+00:00"; /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; /*!40101 SET NAMES utf8mb4 */; -- -- Base de données : `_mydb_` -- -- (EP) Est-ce vraiment utile de faire une transaction si tot ? -- SET AUTOCOMMIT = 0; -- START TRANSACTION; -- Si la BD existe deja, a priori on veut la re-créer, donc il faut d'abord la supprimer -- On fait ca car sinon, si elle existe deja, la re-creation des tables cause des problèmes -- qui sont dus aux index (qui eux ne sont pas supprimés...) DROP DATABASE IF EXISTS _mydb_; DROP DATABASE IF EXISTS _mydbtest_; -- CREATE SCHEMA IF NOT EXISTS _mydb_ DEFAULT CHARACTER SET latin1; CREATE DATABASE IF NOT EXISTS _mydb_ DEFAULT CHARACTER SET latin1; -- CREATE SCHEMA IF NOT EXISTS _mydbtest_ DEFAULT CHARACTER SET latin1; CREATE DATABASE IF NOT EXISTS _mydbtest_ DEFAULT CHARACTER SET latin1; -- Creation du proprietaire de la BD -- La ligne suivante serait la meilleure, mais ne suffit pas, impossible de se connecter a la BD avec ceci : -- grant all on _mydb_.* to 'bddUserName' identified by 'bddUserPass'; -- ni avec ceci : -- grant all on _mydb_.* to 'bddUserName'@'%' identified by 'bddUserPass'; -- Il faut donc faire ceci (ajouter localhost) et on pourra alors se connecter a la BD !!! : -- Il faut supprimer l'utilisateur avant de l'ajouter. -- (EP 2020-01-20) : -- Ca ne marche plus avec mysql 5.7 !!! -- Par contre, ca risque d'etre toujours necessaire pour les anciennes versions !!! -- TODO: tester ce script avec une ancienne version -- GRANT USAGE ON *.* TO 'mydb_user'; -- DROP USER 'mydb_user'; -- GRANT USAGE ON *.* TO 'superadmin'; -- DROP USER 'superadmin'; -- grant all on _mydb_.* to '_mydb_'@'localhost' identified by '_mydb_1'; -- grant all on _mydb_.* to 'mydb_user'@'localhost' identified by 'mydb_pass'; -- grant all on _mydb_.* to '_mydb_user_'@'_server_name_' identified by '_mydb_pass_'; grant all on _mydb_.* to '_mydb_user_'@'localhost' identified by '_mydb_pass_'; -- grant all on _mydbtest_.* to 'superadmin'@'localhost' identified by 'superadmin'; -- grant all on _mydbtest_.* to 'mydb_user'@'localhost' identified by 'mydb_pass'; -- grant all on _mydbtest_.* to '_mydb_user_'@'_server_name_' identified by '_mydb_pass_'; grant all on _mydbtest_.* to '_mydb_user_'@'localhost' identified by '_mydb_pass_'; -- Mais, ca serait plus prudent de limiter les droits (au lieu de "grant all"): -- grant select,insert,update,delete on _mydb_.* to ... flush privileges; /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; -- USE _mydb_; -- Est-ce bien utile ? -- SET FOREIGN_KEY_CHECKS = 0;