From SME Server
Jump to: navigation, search

Is this article helpful to you?
Please consider donating or volunteering
Thank you!

PHPMyAdmin for SME Server

PythonIcon.png Skill level: Medium
The instructions on this page require a basic knowledge of linux.

---Unnilennium 13:32, 24 September 2012 (MDT) }}

Contrib 9:
Contrib 9:


JP Pialasse (aka Unnilennium)


PHPMyAdmin is a tool written in PHP intended to handle the administration of MySQL over the Web.

Currently it can create and drop databases, create/drop/alter tables, delete/edit/add fields, execute any SQL statement, manage keys on fields, manage privileges,export data into various formats.

This contrib provides PHPMyAdmin for SME Server.



This contrib can be found in the smecontribs repository. To install this contrib you will have to get shell access as root user, and issue the following command:

yum --enablerepo=smecontribs install smeserver-phpmyadmin

On sme8 this will also install the dependencies libmcrypt, php53-mcrypt, php53-php-gettext & phpMyAdmin3

then do either

signal-event post-upgrade; signal-event reboot


expand-template /etc/phpMyAdmin/
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart
yum install --enablerepo=smecontribs smeserver-phpmyadmin

then reconfigure

signal-event post-upgrade; signal-event reboot

or if you don't want to restart your server

signal-event phpmyadmin-update


By default, access to phpmyadmin is restricted to the local network, and to any trusted networks. To make phpmyadmin accessible to external networks (the internet), the configuration parameter for access has to be changed. Changing this parameter requires you to use the SME Server shell.

To view the current access setting:

config show phpmyadmin

This would output something like this:


To change the current setting:

private or public access

config setprop phpmyadmin access (private|public)
signal-event ibay-modify
Warning.png Warning:
Setting the access type to public makes PHPMyAdmin available to the internet, make sure you choose a strong password before doing so as you severely weaken the security of your server.

admin access only (default)

set to enabled (enabled|disabled) to use with the url https://your-sme-ip/phpmyadmin with the SME admin account and its password.

config setprop phpmyadmin adminaccess enabled

and do these commands

expand-template /etc/phpMyAdmin/
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

multiuser access

set to enabled (enabled|disabled) to use with the url https://your-sme-ip/phpmyadmin-multi with the Mysql user account of a database and its password. Only the database concerned is seen in the phpmyadmin management web page.

Important.png Note:
alternatively you can use root and ldap password (cat /etc/ldap.secret), but it is not advisable

config setprop phpmyadmin multiaccess enabled

and do these commands

expand-template /etc/phpMyAdmin/
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

prevent the admin access

in certain cases you may want to forbid the adminaccess and allow only the multiaccess, so you have to set the adminaccess to disabled and the multiaccess to enabled

config setprop phpmyadmin adminaccess disabled
config setprop phpmyadmin multiaccess enabled

and do these commands

expand-template /etc/phpMyAdmin/
expand-template /etc/httpd/conf/httpd.conf
service httpd-e-smith restart

therefore the access for multi user will be available through the url https://your-sme-ip/phpmyadmin (instead of phpmyadmin-multi)

Information.png Tip:
remember that at any time you can see you db configuration by the command "config show phpmyadmin in a root Terminal

specific SME Server 9 settings

Only for SME9 you have some more settings available by DB

# config show phpmyadmin
  • status

You can enable/disable phpmyadmin (enabled|disabled)

config setprop phpmyadmin status disabled
signal-event phpmyadmin-update
  • sqladmin

You have a super sql user when you use the cookies authentication mode (phpmyadmin-multi or multiaccess enabled)
login  : sqladmin
password : content of the db sqladminPassword

Additional information

  • The password is changed using the privileges section of phpmyadmin. (Locate the admin user and assign a new password there).
  • Did we mention : NEVER MODIFY MYSQL ROOT user PASSWORD

More information about PhpMyAdmin can be found on the PHPMyAdmin site.


yum remove smeserver-phpmyadmin phpMyAdmin3 libmcrypt php53-mcrypt php53-php-gettext
signal-event post-upgrade; signal-event reboot


Please raise bugs under the SME-Contribs section in bugzilla and select the smeserver-phpmyadmin component or use this link .

IDProductVersionStatusSummary (2 tasks)
10474SME Contribs9.2IN_PROGRESSphpmyadmin is not compatible with mysql 57
10473SME Contribs9.2CONFIRMEDphpmyadmin error with php scl 7


Only released version in smecontrib are listed here.

smeserver-phpmyadmin Changelog: SME 9 (smecontribs)
2015/08/22 stephane de Labrusse
- Initial release to contribs9

2014/09/28 stephane de labrusse
- added a tmp folder other that the /tmp [SME: 8577]

- added some db values to adjust php limits (PostMaxSize,UploadMaxSize,MemoryLimit)

2014/09/28 stephane de labrusse
- added an event template on 'phpmyadmin-update'
- added a phpmyadmin.sql db to save settings in db
- new cool features (bookmarktable,relation,userconfig,table_info,column_info,history,
- recent,table_uiprefs,tracking,table_coords,pdf_pages,designer_coords)
- the http://url/setup page is now forbidden by apache
- a db 'status' exists now to disable simply phpmyadmin in httpd.conf

- removed the openbasedir of /tmp to /var/lib/phpMyAdmin/tmp

2014/09/24 stephane de labrusse
- add memory value up to 500M
- add php upload/post up to 100M
- add session.use_trans_sid 0
- directory 'scripts' removed of httpd templates

- VersionCheck is off now

2014/05/19 stephane de labrusse
-first release to sme9

-added an event template on 'signal-event console-save'