Как включить представление дизайнера phpMyAdmin?

avatar
Carrie Kendall
3 октября 2013 в 18:38
61152
4
30

Я запускаю phpMyAdmin локально и пытаюсь включить инструмент Designer.

Screenshot of phpMyAdmin's Designer view

Как включить представление дизайнера для phpMyAdmin?

Я прочитал довольно много руководств о том, как включить представление конструктора для phpMyAdmin, и все они имеют разные направления, которые, кажется, никогда не заставят его работать.

Я использую версию 4.0.7

Источник

Ответы (4)

avatar
Carrie Kendall
3 октября 2013 в 18:38
42

Следующие шаги включат конструктор в phpMyAdmin 4+ при условии, что phpMyAdmin находится внутри папки phpMyAdmin:

  • Откройте phpMyAdmin/config.inc.php и phpMyAdmin/config.sample.inc.php.
  • Найдите параметры хранения конфигурации phpMyAdmin в config.sample.inc.php (строки 38-66 в 4.0.7).
  • Скопируйте всю конфигурацию базы данных / таблицы управляющего пользователя и хранилища и вставьте ее в config.inc.php. Когда вы закончите, ваш config.inc.php должен содержать что-то вроде этого:

4.0.7 Пример:

/* change this info to whatever user has read-only access to the "mysql/user" and "mysql/db" tables */          
$cfg['Servers'][$i]['controluser']   = 'root'; //this is the default user for MAMP's mysql
$cfg['Servers'][$i]['controlpass']   = 'root'; //this is the default password for MAMP's mysql

/* this information needs to line up with the database we're about to create so don't edit it unless you plan on editing the SQL we're about to run */
$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]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';

Примечание. Мы просто сообщаем phpMyAdmin, в каких именах базы данных и таблиц следует хранить конкретные детали конфигурации. Теперь добавим базу данных.

  • phpMyAdmin устанавливается с SQL, который нам нужен для создания базы данных, на которую опирается Дизайнер. Нам просто нужно найти сценарий. В 4.0.7 расположение файла - phpMyAdmin/examples/create_tables.sql. Кроме того, вы можете скопировать / загрузить это с github phpMyAdmin.
  • Как только вы найдете файл, либо импортируйте файл, либо скопируйте / вставьте его в окно SQL и выполните в phpMyAdmin.
  • Теперь все должно быть настроено правильно. Нам нужно очистить файлы cookie и перезапустить браузер.
  • Когда вы открываете резервную копию phpMyAdmin, переходите к определенной таблице, и на вкладках вы должны увидеть вкладку Designer.

Заявление об ограничении ответственности: эти указания специально основаны на новой структуре папок в phpMyAdmin 4+. Вы можете применить те же указания, используя github config.sample.php phpMyAdmin и сопутствующий ему <812> .4824371000. Выберите версию phpMyAdmin, выбрав правильную ветку.

Alex
4 декабря 2014 в 12:13
3

Очистка файлов cookie кажется важной. Сработало у меня только после того, как я очистил куки. Спасибо!

PodTech.io
3 января 2016 в 15:47
0

Если вы не используете файлы cookie, вам необходимо выйти и снова войти

avatar
Elliptical view
4 октября 2016 в 19:16
1

Для Debian Jessie, 8.6 с phpMyAdmin 4: 4.2.12-2 + deb8u2 вот как я решил это:

Я знаю, что это довольно сложно. Очевидно, что с установщиком что-то не так, но я не знаю, с чего начать, чтобы это исправить. Так что это пока обходной путь. Похоже, что у многих людей возникают проблемы с этой проблемой, и похоже, что существует множество решений, которые работают в разных версиях.


0) Как предлагается в примечаниях к установке Debian здесь Я сделал это первым. Это не устранило проблему, но, возможно, помогло. Он повторно задает вам вопросы, и параметр -p low обязательно задает их все:

dpkg-reconfigure -plow phpmyadmin

В нем говорится, что «он создает базу данных phpmyadmin» (и ее таблицы), но это не так, поэтому мы создадим их вручную ниже.


1) Запустите phpMyAdmin , введя его в свой браузер (на вашем веб-сервере должна быть включена поддержка PHP). Вам понадобятся имя пользователя и пароль для вашего сервера MariaDB или MySQL. Обычно имя пользователя - root. Для меня сервер является локальным, поэтому я выбираю сервер localhost:

 http://localhost/phpmyadmin/

2) Разархивируйте /usr/share/doc/phpmyadmin/examples/create_tables.sql.gz и извлеките SQL. Мне пришлось использовать редактор, чтобы удалить строки комментариев, начинающиеся с "-" .

((ПРИМЕЧАНИЕ Я думаю, что этот архив может быть временно поврежден, так как он выдает ошибку, когда я пытаюсь разархивировать его вручную. Но вы можете использовать этот трюк, чтобы открыть его:

 dd if=create_tables.sql.gz  | gunzip -f 

Также графический интерфейс «Открыть с помощью диспетчера архивов» позволяет мне открывать его.

3) Выберите вкладку SQL, вставьте этот sql из # 2 в поле SQL, и нажмите «Перейти», чтобы создать базу данных и таблицы. (Это отсутствующий SQL, который предположительно находится в /etc/phpmyadmin/sql/create_tables.sql.)

4) Создайте пользователя sql с именем pma. Откройте phpMyAdmin, выберите Home | Пользователи | Добавьте пользователя и добавьте нового пользователя с именем «pma» следующим образом:

User name: Use text field: pma 
Host: Local: localhost 
Password: Use text field: <enter a new password for user pma>

Global privileges (leave all boxes unchecked)

5) Предоставьте пользователю pma полный доступ к новой базе данных phpmyadmin. Снова выберите Home | Пользователи | Изменить привилегии для пользователя pma. Теперь осторожно ... Выберите «База данных» в верхней части экрана. Рядом с «Добавить права доступа к следующей базе данных:» выберите phpmyadmin. Затем щелкните поле «Проверить все» и нажмите «Перейти».

ПРИМЕЧАНИЕ: глобальные привилегии для pma по-прежнему не должны быть отмечены!

6) Отредактируйте /etc/phpmyadmin/config-db.php и измените следующие строки:

 $dbuser='pma';
 $dbpass='<your pma user's password>';

7a) Раскомментируйте следующие строки в /etc/phpmyadmin/config.inc.php:

/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';

/* Server parameters */
if (empty($dbserver)) $dbserver = 'localhost';
$cfg['Servers'][$i]['host'] = $dbserver;

if (!empty($dbport) || $dbserver != 'localhost') {
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['port'] = $dbport;
}
//$cfg['Servers'][$i]['compress'] = false;

/* Select mysqli if your server has it */
$cfg['Servers'][$i]['extension'] = 'mysqli';

/* Optional: User for advanced features */
$cfg['Servers'][$i]['controluser'] = $dbuser;
$cfg['Servers'][$i]['controlpass'] = $dbpass;

/* Optional: Advanced phpMyAdmin features */
$cfg['Servers'][$i]['pmadb'] = $dbname;
$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]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';
$cfg['Servers'][$i]['favorite'] = 'pma__favorite';
$cfg['Servers'][$i]['users'] = 'pma__users';
$cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
$cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
$cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';

7b) Также раскомментируйте следующие строки в /etc/phpmyadmin/config.inc.php и измените controluser на pma, а также добавьте свой пароль в строку 3 ниже:

/* Optional: User for advanced features */
 $cfg['Servers'][$i]['controluser'] = 'pma';
 $cfg['Servers'][$i]['controlpass'] = '<insert your password here>';

/* Storage database and tables */
 $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]['table_uiprefs'] = 'pma__table_uiprefs';
 $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
 $cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
 $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
 $cfg['Servers'][$i]['recent'] = 'pma__recent';
 $cfg['Servers'][$i]['favorite'] = 'pma__favorite';
 $cfg['Servers'][$i]['users'] = 'pma__users';
 $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups';
 $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding';
 $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches';

8) Затем выйдите из системы / войдите в систему.


Обратите внимание, что в Debian важными каталогами являются:

  • / etc / phpmyadmin / - ваши редактируемые установочные файлы
  • / usr / share / phpmyadmin / libraries - включает файл установки по умолчанию
Carrie Kendall
4 октября 2016 в 19:17
0

Уф, похоже, горстка. Надеюсь, это поможет другим на debian +1

avatar
Kit
25 мая 2016 в 11:18
0

Для меня в MySQL 4.6.0 представление конструктора было доступно, но не сохраняло состояние макета.

Затем я сделал следующее, чтобы заставить его работать:

  1. создал каталог ./phpmyadmin/config/
  2. конфигурация chmod 777
  3. перешел на http: // localhost / phpmyadmin / setup / и выполнил базовую инструкцию, используя значения по умолчанию
  4. затем в веб-приложении phpmyadmin в пузыре нижнего колонтитула была красная гиперссылка, в которой говорилось что-то о таблице, которую необходимо создать (я не помню точный текст или в каком разделе навигации я был ... я предполагаю, что в базе данных на вкладке операций). Это создало новую таблицу под названием phpmyadmin, и я думаю, что это место, куда дизайнер сохраняет макеты.

После этого я смог сохранить состояние моего дизайнерского макета, то есть теперь phpMyAdmin Designer был включен.

avatar
ben26941
6 октября 2015 в 15:43
1

Это может сбить с толку, если вы просто последуете другому ответу. Да, вам нужно изменить конфигурацию, как описано, но эта конфигурация относится к пользователю MySQL с особыми привилегиями. Это объясняется здесь: https://wiki.phpmyadmin.net/pma/controluser в разделе о функциях pmadb. Следовательно, есть два шага: (копирование-вставка со связанной страницы)

  1. В mysql:

    GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin. * TO 'pma' @ 'localhost';

  2. В ./config.inc.php:

    $ cfg ['Серверы'] [$ i] ['controluser'] = 'pma'; // Используйте здесь любое имя пользователя, созданное выше $ cfg ['Серверы'] [$ i] ['controlpass'] = 'pmapass'; // используйте здесь пароль, соответствующий этому пользователю