구성 저장소 만들기

구성 저장소 만들기

nginxRaspbian 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/하고 로그인하세요.phpmyadminphpmyadmin. 성공했다고 생각했어요! , 하지만 탐색하는 동안 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위의 명령 구문(사용자 이름과 비밀번호 사용)을 사용하여 수동으로 실행합니다.

구성 저장소 만들기

  1. phpMyAdmin 예시로 이동:cd ${installation_path}/phpmyadmin/examples
  2. 가져오기 예: # mysql -u root -p < create_tables.sql(이렇게 하면 설치에 실패하고 비밀번호를 묻는 스크립트가 실행됩니다.)
  3. 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

관련 정보