Wanting to install phpmyadmin from a bash script, I found it hard to get the right debconf selections in order not to have any web server installed/configured (using nginx, only apache2 and lighttpd available) and not have the phpmyadmin database configured with dbconfig-common, because I didn't found anything like this on Google.
Here's a complete list with debconf selections on Ubuntu 14.04 phpmyadmin 4:4.0.10-1:
debconf-get-selections | grep phpmyadmin
phpmyadmin phpmyadmin/password-confirm password
# MySQL application password for phpmyadmin:
phpmyadmin phpmyadmin/mysql/app-pass password
phpmyadmin phpmyadmin/mysql/admin-pass password
phpmyadmin phpmyadmin/setup-password password
phpmyadmin phpmyadmin/app-password-confirm password
# Database type to be used by phpmyadmin:
phpmyadmin phpmyadmin/database-type select mysql
# Reinstall database for phpmyadmin?
phpmyadmin phpmyadmin/dbconfig-reinstall boolean false
phpmyadmin phpmyadmin/remove-error select abort
phpmyadmin phpmyadmin/reconfigure-webserver multiselect
phpmyadmin phpmyadmin/missing-db-package-error select abort
# Configure database for phpmyadmin with dbconfig-common?
phpmyadmin phpmyadmin/dbconfig-install boolean false
phpmyadmin phpmyadmin/upgrade-error select abort
# Perform upgrade on database for phpmyadmin with dbconfig-common?
phpmyadmin phpmyadmin/dbconfig-upgrade boolean true
# Deconfigure database for phpmyadmin with dbconfig-common?
phpmyadmin phpmyadmin/dbconfig-remove boolean
phpmyadmin phpmyadmin/remote/port string
phpmyadmin phpmyadmin/internal/skip-preseed boolean true
# Do you want to back up the database for phpmyadmin before upgrading?
phpmyadmin phpmyadmin/upgrade-backup boolean true
phpmyadmin phpmyadmin/setup-username string admin
# Host name of the MySQL database server for phpmyadmin:
phpmyadmin phpmyadmin/remote/host select
# MySQL database name for phpmyadmin:
phpmyadmin phpmyadmin/db/dbname string
phpmyadmin phpmyadmin/mysql/admin-user string root
phpmyadmin phpmyadmin/install-error select abort
# Host running the MySQL server for phpmyadmin:
phpmyadmin phpmyadmin/remote/newhost string
# MySQL username for phpmyadmin:
phpmyadmin phpmyadmin/db/app-user string
# Connection method for MySQL database of phpmyadmin:
phpmyadmin phpmyadmin/mysql/method select unix socket
phpmyadmin phpmyadmin/internal/reconfiguring boolean false
# Do you want to purge the database for phpmyadmin?
phpmyadmin phpmyadmin/purge boolean false
phpmyadmin phpmyadmin/passwords-do-not-match error
Note: In order to run debconf-get-selections
you'll need the debconf-utils
package (on Ubuntu/Debian possibly the same on other Debian base distributions), run apt-get install debconf-utils
(there's no prompt on installation for those who will do this from a script).
In order to install phpmyadmin in a script (unattended install) without installing/configuring any web server or having the phpmyadmin database configured with dbconfig-common, you'll need to configure the following selections before installing the package
Without
phpmyadmin phpmyadmin/internal/skip-preseed boolean true
it will start configuring the database with dbconfig-common (no matter howphpmyadmin phpmyadmin/dbconfig-install
is set). For me this was what was missing and I didn't find on Google. The rest are obvious.You can set them like this:
Or if this is not working:
Then run
apt-get -y install phpmyadmin
.