Сб. Дек 21st, 2024

Как оказалось, в удобном скрипте phpmyadmin есть еще и дизайнер связей БД — он позволяет наглядно отображать БД, их содержимое и создавать наглядные связи. Для активации этой функции надо:

1) Открываем /etc/phpmyadmin/config.inc.php и там раскомментируем все строки, которые начинаются с $cfg.У меня в конечном итоге содержимое файла стало такое:

<?php
/**
тут была куча ненужных комментариев.
 */

/**
 * Server(s) configuration
 */
$i = 0;
// The $cfg[‘Servers’] array starts with $cfg[‘Servers’][1].  Do not use $cfg[‘Servers’][0].
// You can disable a server config entry by setting host to ».
$i++;

/* Authentication type */
$cfg[‘Servers’][$i][‘auth_type’] = ‘cookie’;
/* Server parameters */
$cfg[‘Servers’][$i][‘host’] = ‘localhost’;
$cfg[‘Servers’][$i][‘connect_type’] = ‘tcp’;
$cfg[‘Servers’][$i][‘compress’] = false;
/* Select mysqli if your server has it */
$cfg[‘Servers’][$i][‘extension’] = ‘mysql’;
/* Optional: User for advanced features */
 $cfg[‘Servers’][$i][‘controluser’] = ‘pma’;
 $cfg[‘Servers’][$i][‘controlpass’] = ‘пароль‘;
/* Optional: Advanced phpMyAdmin features */
$cfg[‘Servers’][$i][‘pmadb’] = ‘phpmyadmin’;
$cfg[‘Servers’][$i][‘bookmarktable’] = ‘pma_bookmark’;
$cfg[‘Servers’][$i][‘relation’] = ‘pma_relation’;
$cfg[‘Servers’][$i][‘table_info’] = ‘pma_table_info’;
$cfg[‘Servers’][$i][‘table_coords’] = ‘pma_table_coords’;
$cfg[‘Servers’][$i][‘pdf_pages’] = ‘pma_pdf_pages’;
$cfg[‘Servers’][$i][‘column_info’] = ‘pma_column_info’;
$cfg[‘Servers’][$i][‘history’] = ‘pma_history’;
$cfg[‘Servers’][$i][‘designer_coords’] = ‘pma_designer_coords’;

/*
 * End of servers configuration
 */

/*
 * Directories for saving/loading files from server
 */
$cfg[‘UploadDir’] = »;
$cfg[‘SaveDir’] = »;

2) Теперь с помощью например того же Phpmyadmin создаем базу с именем phpmyadmin и пользователя с именем pma не забыв установить пароль и дав все права на базу phpmyadmin.

3)Вверху выбираем пункт SQL для создания sql-запроса и пишем туда след:

DROP DATABASE IF EXISTS `phpmyadmin`;

CREATE DATABASE `phpmyadmin`;

USE phpmyadmin;

GRANT SELECT, INSERT, DELETE, UPDATE ON `phpmyadmin`.* TO ‘pma’@localhost;

CREATE TABLE `pma_bookmark` ( `id` int(11) NOT NULL auto_increment, `dbase` varchar(255) NOT NULL default », `user` varchar(255) NOT NULL default », `label` varchar(255) NOT NULL default », `query` text NOT NULL, PRIMARY KEY (`id`) ) TYPE=InnoDB COMMENT=’Bookmarks’;

CREATE TABLE `pma_column_info` ( `id` int(5) unsigned NOT NULL auto_increment, `db_name` varchar(64) NOT NULL default », `table_name` varchar(64) NOT NULL default », `column_name` varchar(64) NOT NULL default », `comment` varchar(255) NOT NULL default », `mimetype` varchar(255) NOT NULL default », `transformation` varchar(255) NOT NULL default », `transformation_options` varchar(255) NOT NULL default », PRIMARY KEY (`id`), UNIQUE KEY `db_name` (`db_name`,`table_name`,`column_name`) ) TYPE=InnoDB COMMENT=’Column information for phpMyAdmin’;

CREATE TABLE `pma_history` ( `id` bigint(20) unsigned NOT NULL auto_increment, `username` varchar(64) NOT NULL default », `db` varchar(64) NOT NULL default », `table` varchar(64) NOT NULL default », `timevalue` timestamp(14) NOT NULL, `sqlquery` text NOT NULL, PRIMARY KEY (`id`), KEY `username` (`username`,`db`,`table`,`timevalue`) ) TYPE=InnoDB COMMENT=’SQL history for phpMyAdmin’;

CREATE TABLE `pma_pdf_pages` ( `db_name` varchar(64) NOT NULL default », `page_nr` int(10) unsigned NOT NULL auto_increment, `page_descr` varchar(50) NOT NULL default », PRIMARY KEY (`page_nr`), KEY `db_name` (`db_name`) ) TYPE=InnoDB COMMENT=’PDF relation pages for phpMyAdmin’;

CREATE TABLE `pma_relation` ( `master_db` varchar(64) NOT NULL default », `master_table` varchar(64) NOT NULL default », `master_field` varchar(64) NOT NULL default », `foreign_db` varchar(64) NOT NULL default », `foreign_table` varchar(64) NOT NULL default », `foreign_field` varchar(64) NOT NULL default », PRIMARY KEY (`master_db`,`master_table`,`master_field`), KEY `foreign_field` (`foreign_db`,`foreign_table`) ) TYPE=InnoDB COMMENT=’Relation table’; 

CREATE TABLE `pma_table_coords` ( `db_name` varchar(64) NOT NULL default », `table_name` varchar(64) NOT NULL default », `pdf_page_number` int(11) NOT NULL default ‘0’, `x` float unsigned NOT NULL default ‘0’, `y` float unsigned NOT NULL default ‘0’, PRIMARY KEY (`db_name`,`table_name`,`pdf_page_number`) ) TYPE=InnoDB COMMENT=’Table coordinates for phpMyAdmin PDF output’;

CREATE TABLE `pma_table_info` ( `db_name` varchar(64) NOT NULL default », `table_name` varchar(64) NOT NULL default », `display_field` varchar(64) NOT NULL default », PRIMARY KEY (`db_name`,`table_name`) ) TYPE=InnoDB COMMENT=’Table information for phpMyAdmin’;

CREATE TABLE `pma_designer_coords` ( `db_name` varchar(64) NOT NULL default », `table_name` varchar(64) NOT NULL default », `x` INT(11) default NULL, `y` INT(11) default NULL, `v` TINYINT(4) default NULL, `h` TINYINT(4) default NULL, PRIMARY KEY (`db_name`,`table_name`) ) TYPE=InnoDB COMMENT=’Table coordinates for Designer’

Результатом должно быть сообщение об успешном выполнении запроса. Теперь зайдя в любую таблицу вы увидите вверху еще и кнопку Дизайнер. Ну а дальше сами поймете)

от RUSUA

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Анти-спам: выполните заданиеWordPress CAPTCHA