PHPMyAdmin

From SME Server
Jump to navigationJump to 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 10:
Contrib 9:
phpMyAdmin
Description


Contrib 10:
Contrib 9:
smeserver-phpmyadmin
Description


Maintainer

JP Pialasse (aka Unnilennium)

Description

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.

Installation

yum install --enablerepo=smecontribs smeserver-phpmyadmin

then configure according to your needs

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

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

or

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

Configuration

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:

phpmyadmin=configuration
 access=private
 adminaccess=enabled
 multiaccess=disabled

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/config.inc.php
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/config.inc.php
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/config.inc.php
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 and newer settings

Starting SME9 you have some more settings available by DB

# config show phpmyadmin
phpmyadmin=configuration
   DbName=phpmyadmin
   DbPassword=rvAd9ShvG2GyiWPXiH+oAK3/yk4GwCxDW5PWzy2CWdtMG7zu3SSH7XkJUEV7EpY8HSVaCCHKL//2
   DbUser=phpmyadmin
   access=private
   adminaccess=enabled
   multiaccess=disabled
   sqladminPassword=mcJ1Tad4I0XENJrl+sfzkKjS8rs4Bq6C0MsjbTkgyv3evFLrPgrXy8eP1u23vANuGtSkQ3//8tmM
   status=enabled
  • 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

  • Blowfish secret

Starting SME10, you also have a secret generated,for blowfish, but you can change it if you want.

BlowfishSecret=ssdfgsdg/sdfgsdffgsdrtert546y654bttbt

Additional information

  • NEVER MODIFY MYSQL ROOT user PASSWORD
  • 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.

Uninstall

yum remove phpMyAdmin
signal-event post-upgrade; signal-event reboot

Bugs

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

IDProductVersionStatusSummary (3 tasks)
12736SME Contribs11.0RESOLVEDfirst build for sme11
12516SME Contribs10.0CONFIRMEDWrong Servers output from template
12343SME Contribs10.0RESOLVEDauthorization in Location section make Directory section authorization ignored

Changelog

Only released version in smecontrib are listed here.

smeserver-phpmyadmin Changelog: SME 10 (smecontribs)
2023/10/25 Jean-Philippe Pialasse 4.0.10.2-14.sme
- fix private access not respected for admin [SME: 12343]
2022/07/31 Jean-Philippe Pialasse 4.0.10.2-13.sme
- update to httpd 2.4 access syntax [SME: 12056]

2022/07/23 Jean-Philippe Pialasse 4.0.10.2-12.sme
- use $httpPort in place of hardcoded port 80 [SME: 11408]

- update to httpd 2.4 access syntax [SME: 12056]

2021/02/28 Jean-Philipe Pialasse 4.0.10.2-11.sme
- finish php74 pool integration [SME: 11043]

fixed dir perms
2020/12/18 John Crisp 4.0.10.2-8.sme
- add php pool template and remove disable unit.ini