1

Тема: Помогите создать базу.

Я совсем не разбираюсь в Mysql.А нужно создать такую базу.Объясните как это сделать через phpmyadmin.
[spoiler]--
-- БД: `exim`
--
USE mysql;
INSERT INTO `user` (`Host`, `User`, `Password`)
VALUES ('localhost','exim',password('exim'));
INSERT INTO `db` (`Host`, `Db`, `User`, `Select_priv`)
VALUES ('localhost','exim','exim','Y');
FLUSH PRIVILEGES;
GRANT USAGE ON exim.* TO exim@localhost;
GRANT SELECT, INSERT, DELETE, UPDATE ON exim.* TO exim@localhost;
CREATE DATABASE `exim`;
USE `exim`;

-- --------------------------------------------------------

--
-- Структура таблицы `admin`
--

CREATE TABLE `admin` (
  `username` varchar(255) NOT NULL default '',
  `password` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`username`),
  KEY `username` (`username`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Virtual Admins';

-- --------------------------------------------------------

--
-- Структура таблицы `alias`
--

CREATE TABLE `alias` (
  `address` varchar(255) NOT NULL default '',
  `goto` text NOT NULL,
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`address`),
  KEY `address` (`address`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Virtual Aliases';

-- --------------------------------------------------------

--
-- Структура таблицы `domain`
--

CREATE TABLE `domain` (
  `domain` varchar(255) NOT NULL default '',
  `description` varchar(255) NOT NULL default '',
  `aliases` int(10) NOT NULL default '0',
  `mailboxes` int(10) NOT NULL default '0',
  `maxquota` int(10) NOT NULL default '0',
  `transport` varchar(255) default NULL,
  `backupmx` tinyint(1) NOT NULL default '0',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`domain`),
  KEY `domain` (`domain`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Virtual Domains';

-- --------------------------------------------------------

--
-- Структура таблицы `domain_admins`
--

CREATE TABLE `domain_admins` (
  `username` varchar(255) NOT NULL default '',
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  KEY `username` (`username`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Domain Admins';

-- --------------------------------------------------------

--
-- Структура таблицы `log`
--

CREATE TABLE `log` (
  `timestamp` datetime NOT NULL default '0000-00-00 00:00:00',
  `username` varchar(255) NOT NULL default '',
  `domain` varchar(255) NOT NULL default '',
  `action` varchar(255) NOT NULL default '',
  `data` varchar(255) NOT NULL default '',
  KEY `timestamp` (`timestamp`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Log';

-- --------------------------------------------------------

--
-- Структура таблицы `mailbox`
--

CREATE TABLE `mailbox` (
  `username` varchar(255) NOT NULL default '',
  `password` varchar(255) NOT NULL default '',
  `name` varchar(255) NOT NULL default '',
  `maildir` varchar(255) NOT NULL default '',
  `quota` int(10) NOT NULL default '0',
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `modified` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`username`),
  KEY `username` (`username`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Virtual Mailboxes';

-- --------------------------------------------------------

--
-- Структура таблицы `vacation`
--

CREATE TABLE `vacation` (
  `email` varchar(255) NOT NULL default '',
  `subject` varchar(255) NOT NULL default '',
  `body` text NOT NULL,
  `cache` text NOT NULL,
  `domain` varchar(255) NOT NULL default '',
  `created` datetime NOT NULL default '0000-00-00 00:00:00',
  `active` tinyint(1) NOT NULL default '1',
  PRIMARY KEY  (`email`),
  KEY `email` (`email`)
) TYPE=MyISAM COMMENT='Exim and dovecot Admin - Virtual Vacation';[/spoiler]

2 (изменено: DmitryV, 2010-08-05 14:29:52)

Re: Помогите создать базу.

В phpMyAdmin - создать новую базу `exim` назначив нужную кодировку сравнения, затем слева в колонке выбрать базу сделав её активной, затем справа выбрать в меню SQL и выполнить запросы на создание таблиц начиная с таблицы `admin` первое (создание самой базы) можете пропустить вам будет проще создать базу и назначить разрешения и пользователя к ней через phpMyAdmin, после создания пользователя и присвоения ему привилегий не забудьте выполнить - перегрузить привилегии

3

Re: Помогите создать базу.

Создал я базу exim с кодировкой (utf8_general_ci) дальше создал таблицы начиная с таблицы admin.В привилегиях при добавление нового пользователя какое указывать имя и пароль?И по чему при создание таблицы первый столбик не нужно было вписывать??

Мне нужно создать эту базу с таблицами для дальнейший настройки exim , dovecot с веб интерфейсом postfixadmin.По этому я думаю по чему вот эта таблица не где не фигурирует?
[spoiler]--
-- БД: `exim`
--
USE mysql;
INSERT INTO `user` (`Host`, `User`, `Password`)
VALUES ('localhost','exim',password('exim'));
INSERT INTO `db` (`Host`, `Db`, `User`, `Select_priv`)
VALUES ('localhost','exim','exim','Y');
FLUSH PRIVILEGES;
GRANT USAGE ON exim.* TO exim@localhost;
GRANT SELECT, INSERT, DELETE, UPDATE ON exim.* TO exim@localhost;
CREATE DATABASE `exim`;
USE `exim`;
[/spoiler]

4 (изменено: DmitryV, 2010-08-05 16:35:17)

Re: Помогите создать базу.

Первая инструкция создает вам базу данных и пользователя но с именем exim и паролем exim что не хорошо для обеспечения безопасности а так Вы написали что не знакомы с SQL я вам и рекоменндовал сперва создать базу средствами phpMyAdmin, затем пользователя с правами только к Вашей базе и нужными для работы привелегиями.

Вы создайте пользователя с нужным вам именем и паролем потом войдите в назначение привелегий и дайте ему права на вашу базу данных - перегрузите привелегии в скрипте укажите Вашего пользователя и пароль для работы с Вашей базой данных и при необходимости имя вашей базы данных.

В Вашем случае пользователя с именем exim пароль задайте любой потом его укажите в скрипте.
скрипт задает имя пользователя exim этто на важно но и пароль exim что является дыркой в вашей безопасности задайте более сложный пароль и потом внесите его в ваш скрипт обычно в файле config.php

5

Re: Помогите создать базу.

Понял,спасибо))

6

Re: Помогите создать базу.

Кстати не получается что то создать нового пользователя в базе exim c именем exim - пишет вот такую ошибку:

Пользователь 'exim'@'localhost' уже существует!



Но я еще его точно не создавал!

7

Re: Помогите создать базу.

посмотрите в списек пользователей возможно вы создавая базу создали и пользователя или прогнали скрипт SQL ранее и его создали тогда просто его отредактируйте пароль и права

8

Re: Помогите создать базу.

При попытке создания SQL запроса c полностью приложенным дампом бд MYSQL показывает вот такую ошибку.Но пользователь наверняка уже создан.Только вот какой интересно пароль и что по сути за ошибка?
http://s61.radikal.ru/i171/1008/c2/5a4fdd66a7de.jpg

9

Re: Помогите создать базу.

user
Пользователь exim@localhost у вас уже создан, ошибка выводится запрещая создание его дубля.

Перейдите в phpMyAdmin во вкладку "Привилегии", выберите редактирование привилегий пользователя exim и на открывшейся странице сможете сменить пароль. После этого пропишите этот пароль в конфигурационном файле скрипта и все должно заработать.

10 (изменено: DmitryV, 2010-08-05 20:07:37)

Re: Помогите создать базу.

PS: не ставьте тот пароль что у Вас в скиншоте!  (пароли - как зубная щетка сугубо личное...)

11

Re: Помогите создать базу.

Все понял - спс.