Pamięć konfiguracji phpMyAdmin nie jest całkowicie skonfigurowana


14

Napisałem apt-get install phpmyadmini napotkałem błąd, mówiąc, że nie można połączyć się z mysql (problem z gniazdem). To było normalne, bo zapomnę zainstalować mysql wcześniej , więc wybrałem „Abort” nad wszystkimi opcjami podanymi przez phpMyAdmin.

Następnie sudo taskseli zainstalowany lamp server.

Po zakończeniu uruchomiłem:

apt-get remove --purge phpmyadmin
apt-get install phpmyadmin

Potem mysql -u root -pdostałem następujący błąd:Access denied for the following user 'root'@'localhost'

Więc rozwiązałem ten problem, wykonując:

mysql
SET PASSWORD FOR root@localhost=PASSWORD('mypassword'); 
GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

Następnie pomyślnie zalogowałem się na localhost / phpmyadmin , ale znalazłem ten komunikat:

Pamięć konfiguracji phpMyAdmin nie jest całkowicie skonfigurowana, niektóre rozszerzone funkcje zostały dezaktywowane. Aby dowiedzieć się, dlaczego kliknij tutaj.

Kliknąłem tutaj , co pokazało mi: wprowadź opis zdjęcia tutaj

Czy mogę spokojnie kontynuować pracę z mysql / phpmyadmin?


Tak to jest poprawne. Upewnij się, że wszystkie dyrektywy $ cfg [„Servers”] [$ i] nie są komentowane!
kratos

Odpowiedzi:


26

Odpowiedź OP :

Rozwiązałem ten problem w następujący sposób:

cd /usr/share/doc/phpmyadmin/examples
sudo gunzip create_tables.sql.gz 
mysql -u root -p < create_tables.sql
mysql -u root -p -e 'GRANT SELECT, INSERT, DELETE, UPDATE ON phpmyadmin.* TO 'pma'@'localhost' IDENTIFIED BY "pmapassword"'

Następnie edytowane /etc/phpmyadmin/config.inc.phpw tych wierszach:

/* Optional: User for advanced features */
$cfg['Servers'][$i]['controluser'] = 'pma';
$cfg['Servers'][$i]['controlpass'] = 'pmapassword';

Zalogowałem się ponownie w phpmyadmin, a następnie komunikat ostrzegawczy zniknął.

Zauważ również, że możesz mieć nowe ostrzeżenie o pamięci phpmyadmin, która nie jest w pełni skonfigurowana. Może to być spowodowane tym, że musisz powiedzieć phpmyadmin nazwę tabel, aby użyć ich funkcji. Można to zrobić edytując /etc/phpmyadmin/config.inc.phpw tych liniach:

$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark';
$cfg['Servers'][$i]['relation'] = 'pma__relation';
$cfg['Servers'][$i]['table_info'] = 'pma__table_info';
$cfg['Servers'][$i]['table_coords'] = 'pma__table_coords';
$cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages';
$cfg['Servers'][$i]['column_info'] = 'pma__column_info';
$cfg['Servers'][$i]['history'] = 'pma__history';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
$cfg['Servers'][$i]['tracking'] = 'pma__tracking';
$cfg['Servers'][$i]['designer_coords'] = 'pma__designer_coords';
$cfg['Servers'][$i]['userconfig'] = 'pma__userconfig';
$cfg['Servers'][$i]['recent'] = 'pma__recent';

Zwróć uwagę na podwójny znak podkreślenia __.


Nadal miałem drobny problem i musiałem skomentować:
itnet7,

// $ cfg ['Servers'] [$ i] ['controluser'] = $ dbuser; // $ cfg ['Servers'] [$ i] ['controlpass'] = $ dbuserpwd; być pma i ustawione hasło.
itnet7,

1
Nie zapomnij wylogować się i zalogować ponownie.
nwolybug

@nwolybug mysql uprawnienia użytkownika są stosowane natychmiast
Braiam

1
i nie zapomnij, aby odzwierciedlić zmiany, które musisz zalogować się ponownie w phpmyadmin. Odświeżanie strony nie będzie działać.
kuri

2

Musiałem także zmienić nazwę wszystkich tabel na /etc/phpmyadmin/config.inc.phppodwójne podkreślenia np.

$cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark'; 

ponieważ była to tabela utworzona po create_tables.sqlwykonaniu.


2

Pomogło mi to:

  1. sudo vim /etc/phpmyadmin/config.inc.php
  2. Dodaj następujące wiersze do innych $ cfg [„Servers”] [$ i]:

    $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns'; $cfg['Servers'][$i]['favorite'] = 'pma__favorite'; $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding'; $cfg['Servers'][$i]['recent'] = 'pma__recent'; $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches'; $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs'; $cfg['Servers'][$i]['tracking'] = 'pma__tracking'; $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups'; $cfg['Servers'][$i]['tracking'] = 'pma__users';

  3. Teraz spróbuj zalogować się do localhost / phpmyadmin. Komunikat o błędzie nie powinien się już wyświetlać.

W skrócie, niezależnie od tego, jaki błąd brakującego elementu pojawia się po prostu Dodaj:

$cfg['Servers'][$i][COMPONENT] = 'pma__COMPONENT';

w /etc/phpmyadmin/config.inc.php


1

Zespół VestaCP stworzył i pomyślnie przetestował skrypt, aby pozbyć się irytującego komunikatu „Pamięć konfiguracji phpMyAdmin nie jest całkowicie skonfigurowana, niektóre rozszerzone funkcje zostały dezaktywowane”. Mamy nadzieję, że poprawka przyda się i pomoże użytkownikom. Odwiedź stronę Github, aby uzyskać kod.

Scenariusz:

  • Działa z użytkownika root
  • Tworzy kopię zapasową /etc/phpmyadmin/config.inc.phpw/root
  • Zmienia wartości w /etc/phpmyadmin/config.inc.php
  • Dodaje użytkownika mysql pmai tabelę phpmyadmin(jeśli użytkownik lub tabela już istnieje, skrypt je usunie!)
  • Pobiera i dodaje tabelę do bazy danych phpmyadmin
  • Czyści pliki tymczasowe, w tym resztki pma.txt(zawiera hasło do pma @ localhost) i starą konfigurację

1

Dla mnie: muszę edytować /etc/phpmyadmin/config-db.php w tym wierszu:

$dbname='phpmyadmin';

to mi pomogło. bez niego działał tylko dla użytkownika root db, z tym również dla innego.
luky

0

Żadne z podanych tutaj rozwiązań nie działało dla mnie.

Ten problem występuje w przypadku aktualizacji mysql do wersji 5.6 lub 5.7.

Rozwiązałem to, instalując wersję phpmyadmin 4.7.

Cieszyć się

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.