phpMyAdmin (以下简称 PMA )的数据字典( Data Dictionary )对我来说是一个比较有用的功能(实际上我只用这个功能...),可以以网页形式浏览所有表、视图、字段、索引、注释等,在一个有数百张表的数据库中可以快速检索所需信息。
而利用 Docker 可以方便快速地在本地部署 PMA。
下载
docker pull phpmyadmin/phpmyadmin
运行
docker run --name PMA -d -p 8080:80 --restart=always -e PMA_ARBITRARY=1 -v /path/to/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php -v /path/to/phpmyadmin/php.ini:/usr/local/etc/php/conf.d/php.ini phpmyadmin/phpmyadmin
-e PMA_ARBITRARY=1
表示默认可连接任意数据库。
同时我挂载了两个文件到容器中,一个是 PMA 的配置文件,另一个是 PHP 的配置文件。原因是 PMA 的 session 默认超时时间太短( 1440 秒),经常跳转登录页面影响效率。
config.user.inc.php
<?php
$cfg['LoginCookieValidity'] = 1440000;
php.ini
[Session]
session.gc_maxlifetime = 1440000
挂载以上两个配置文件后,我们就可以愉快地使用 PMA 了。