nginx
Raspbian Stretch를 실행하는 Raspberry Pi에 설치하고 설치 Wordpress
중에 다음 명령을 실행했습니다.
sudo apt install mysql-server
sudo apt install php-mysql
MariaDB를 설정하고 WordPress 데이터베이스를 설정했습니다.
sudo mysql_secure_installation
sudo mysql -uroot -p
create database wordpress;
GRANT ALL PRIVILEGES ON wordpress.* TO 'root'@'localhost' IDENTIFIED BY 'redacted';
일부 WordPress 구성을 완료했으며 WordPress를 백업하고 싶습니다.
phpmyadmin
( )을 설치하려고 하는데 sudo apt install phpmyadmin
항상 실패하고 오류가 발생합니다. ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
root@localhost의 비밀번호를 입력하는 옵션이 없는 것 같습니다.
이것을 묻는 나의 시도는 MariaDB
다음과 같습니다.
MariaDB [(none)]> status
--------------
mysql Ver 15.1 Distrib 10.1.23-MariaDB, for debian-linux-gnueabihf (armv7l) using readline 5.2
Connection id: 104
Current database:
Current user: root@localhost
SSL: Not in use
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server: MariaDB
Server version: 10.1.23-MariaDB-9+deb9u1 Raspbian 9.0
Protocol version: 10
Connection: Localhost via UNIX socket
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
UNIX socket: /var/run/mysqld/mysqld.sock
Uptime: 18 hours 43 min 19 sec
MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| wordpress |
+--------------------+
그래서 phpmyadmin
데이터베이스가 생성되지 않은 것 같습니다.
누구든지 설치를 도와줄 수 있나요 phpmyadmin
?
phpmyadmin 데이터베이스를 수동으로 생성하는 것이 도움이 됩니까?
편집하다
@Kramer의 답변에 따르면 이는 데비안의 알려진 문제인 것 같습니다(데비안 패키지를 확인해야 한다고 생각합니다).
이제 다음 단계를 수행했습니다(파일 위치가 제안된 위치와 다릅니다).
cd /usr/share/phpmyadmin/sql/
create database phpmyadmin;
mysql -u root -p < create_tables.sql
create database phpmyadmin;
grant all privileges on phpmyadmin.* to phpmyadmin@localhost identified by "redacted";
Grant USAGE ON mysql.* TO phpmyadmin@localhost;
GRANT SELECT ON mysql.db TO phpmyadmin@localhost;
GRANT SELECT (Host, Db, User, Table_name, Table_priv, Column_priv) ON mysql.tables_priv TO phpmyadmin@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 phpmyadmin@localhost;
GRANT SELECT, INSERT, UPDATE, DELETE ON phpmyadmin.* TO phpmyadmin@localhost;
nginx
다음을 추가하여 /etc/nginx/sites-available/default
구성했습니다 .https://www.linuxbabe.com/linux-server/install-phpmyadmin-nginx-ubuntu-16-04
location /phpmyadmin {
root /usr/share/;
index index.php;
try_files $uri $uri/ =404;
location ~ ^/phpmyadmin/(doc|sql|setup)/ {
deny all;
}
location ~ /phpmyadmin/(.+\.php)$ {
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
}
}
표시된 대로 탐색 your-domain.com/phpmyadmin/
하고 로그인하세요.phpmyadmin
phpmyadmin. 성공했다고 생각했어요! , 하지만 탐색하는 동안 Databases
다음 오류가 발생했습니다.-
mysqli_real_connect(): (HY000/1045): Access denied for user 'root'@'localhost' (using password: YES)
Connection for controluser as defined in your configuration failed.
/etc/phpmyadmin/
설치 로그에 따르면 이전 시도에서 비밀번호가 누락된 파일을 생성/수정한 것으로 보입니다.
Creating config file /etc/phpmyadmin/config-db.php with new version
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO).
unable to connect to mysql server.
error encountered creating user:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
dbconfig-common: phpmyadmin configure: trying again.
Determining localhost credentials from /etc/mysql/debian.cnf: succeeded.
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO).
unable to connect to mysql server.
error encountered creating user:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
dbconfig-common: phpmyadmin configure: trying again.
Determining localhost credentials from /etc/mysql/debian.cnf: succeeded.
dbconfig-common: writing config to /etc/dbconfig-common/phpmyadmin.conf
Replacing config file /etc/dbconfig-common/phpmyadmin.conf with new version
Replacing config file /etc/phpmyadmin/config-db.php with new version
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO).
unable to connect to mysql server.
error encountered creating user:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
답변1
첫째, 귀하가 겪고 있는 오류는 일부 스크립트가 비밀번호 없이 루트로 mysql을 실행하려고 하기 때문에 발생합니다. 귀하는 루트이거나 다음을 사용하고 있습니다 sudo
.
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
MySQL 루트 사용자에게 비밀번호가 있다고 가정하면 다음과 같이 MySQL CLI에 액세스하거나 상호 작용해야 합니다.
mysql -u username -p
비밀번호는 아래에서 요청됩니다.
간단한(권장되지는 않음) 수정 방법은 루트의 MySQL 비밀번호를 제거하고 전체 설치를 수행한 다음 비밀번호를 재설정하는 것입니다. 이렇게 하면 설치 스크립트가 성공적으로 완료됩니다.
이 문제를 해결하는 올바른 방법CREATE DATABASE
설치 스크립트에서 명령을 수동으로 찾고 mysql
위의 명령 구문(사용자 이름과 비밀번호 사용)을 사용하여 수동으로 실행합니다.
구성 저장소 만들기
- phpMyAdmin 예시로 이동:
cd ${installation_path}/phpmyadmin/examples
- 가져오기 예:
# mysql -u root -p < create_tables.sql
(이렇게 하면 설치에 실패하고 비밀번호를 묻는 스크립트가 실행됩니다.) - NGINX를 다시 시작합니다:
# systemctl restart nginx
원천http://howtolamp.com/lamp/phpmyadmin/4.2/installing#configuration-storage
또한 phpmyadmin 문서에는 Debian의 특정 단계가 지정되어 있는데, 이는 Raspbian에서도 비슷할 것 같습니다.https://docs.phpmyadmin.net/en/latest/setup.html#linked-tables