Я спрашиваю о конфигурации phpMyAdmin, чтобы несколько пользователей могли получить доступ к своим базам данных с полными правами, но не могли видеть, редактировать или удалять другие базы данных.
Я установил phpMyAdmin следующим образом:
sudo apt-get install phpmyadmin
Web server to reconfigure automatically: <-- apache2
Configure database for phpmyadmin with dbconfig-common? <-- No
Установка успешно запущена, но я могу получить доступ только к phpMyAdmin от имени пользователя root. Если я создаю базу данных 'testdb' и предоставляю права доступа следующим образом:
GRANT ALL PRIVILEGES ON testdb.* TO 'user1'@'%' IDENTIFIED BY 'pass1';
FLUSH PRIVILEGES;
Я все еще не могу получить доступ к phpMyAdmin с учетными данными user1. Зачем? Как я могу дать пользователю1 все привилегии в своей базе данных с доступом к phpMyAdmin?
Следующие работы для предоставления доступа к многочисленным пользователям:
, В первую очередь, обновляют Вашу phpmyadmin версию для Ubuntu:
sudo nano /etc/apt/source.list
## Untrusted PPA phpMyAdmin
deb http://ppa.launchpad.net/nijel/phpmyadmin/ubuntu trusty main
deb-src http://ppa.launchpad.net/nijel/phpmyadmin/ubuntu trusty main
sudo apt-get update
sudo apt-get install phpmyadmin
После установки последней версии настраивают phpmyadmin:
mysql > CREATE DATABASE phpmyadmin;
Import into phpmyadmin database „create_tables.sql.gz“
from the directory „/usr/share/doc/phpmyadmin/examples“
Add new user pma to database phpmyadmin:
CREATE USER 'pma'@'localhost' IDENTIFIED BY 'pmapassword';
GRANT USAGE ON mysql.* TO 'pma'@'localhost' IDENTIFIED BY 'pmapassword';
GRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv,
Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv,
Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv,
Repl_client_priv) ON mysql.user TO 'pma'@'localhost';
GRANT SELECT ON mysql.db TO 'pma'@'localhost';
GRANT SELECT ON mysql.host TO 'pma'@'localhost';
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON
mysql.tables_priv TO 'pma'@'localhost';
GRANT SELECT (Host, User, Select_priv, Insert_priv, Update_priv, Delete_priv,
Create_priv, Drop_priv, Reload_priv, Shutdown_priv, Process_priv, File_priv,
Grant_priv, References_priv, Index_priv, Alter_priv, Show_db_priv, Super_priv,
Create_tmp_table_priv, Lock_tables_priv, Execute_priv, Repl_slave_priv,
Repl_client_priv) ON mysql.user TO 'pma'@'localhost';
GRANT SELECT ON mysql.db TO 'pma'@'localhost';
GRANT SELECT ON mysql.host TO 'pma'@'localhost';
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON
mysql.tables_priv TO 'pma'@'localhost';
sudo nano /etc/phpmyadmin/ config-db.php
$dbuser='pma';
$dbpass=‘pmapassword‘;
$basepath='';
$dbname='phpmyadmin';
$dbserver='127.0.0.1';
$dbport='3306';
$dbtype='mysql';
sudo nano /etc/phpmyadmin/config.inc.php
$cfg['Servers'][$i]['controluser'] = $dbuser;
$cfg['Servers'][$i]['controlpass'] = $dbpass;
$cfg['Servers'][$i]['hide_db'] = '^(information_schema|mysql|performance_schema|phpmyadmin);