source

로컬 phpMyAdmin 클라이언트를 사용하여 원격 서버에 액세스하는 방법

manycodes 2022. 11. 16. 21:30
반응형

로컬 phpMyAdmin 클라이언트를 사용하여 원격 서버에 액세스하는 방법

리모트 서버가 있고 컴퓨터에 phpMyAdmin 클라이언트가 설치되어 있다고 가정합니다.phpMyAdmin 클라이언트를 통해 이 서버에 액세스하여 관리하려면 어떻게 해야 합니까?그게 가능한가요?

아래 행만 추가해 주세요./etc/phpmyadmin/config.inc.php[ ] [ 일 、 [ 。

$i++;
$cfg['Servers'][$i]['host'] = 'HostName:port'; //provide hostname and port if other than default
$cfg['Servers'][$i]['user'] = 'userName';   //user name for your remote server
$cfg['Servers'][$i]['password'] = 'Password';  //password
$cfg['Servers'][$i]['auth_type'] = 'config';       // keep it as config

될 것이다Current Server:를 걸치다127.0.0.1그리고 당신이 제공한 것 중 하나는$cfg['Servers'][$i]['host']는 서버 사이를 전환할 수 있습니다.

상세: http://sforsuresh.in/access-remote-mysql-server-using-local-phpmyadmin/

다른 답변에서 지적한 바와 같이 phpMyAdmin의 로컬인스턴스에서 리모트 MySQL 서버에 접속할 수 있습니다.그러기 위해서는 리모트서버의 MySQL 서버가 리모트 접속을 받아 들여 MySQL이 수신하고 있는 포토 번호의 트래픽을 방화벽을 통과할 수 있도록 설정할 필요가 있습니다.SSH Tunnelling과 관련된 약간 다른 솔루션을 선호합니다.

다음 명령어는 포트 3307에 대한 모든 요구를 로컬머신에서 리모트머신 포트 3306으로 전송하는SSH 터널을 설정합니다.

ssh -NL 3307:localhost:3306 root@REMOTE_HOST

메시지가 표시되면 원격 시스템의 루트 사용자의 암호를 입력해야 합니다.이렇게 하면 터널이 열립니다.백그라운드에서 실행하는 「」를 .-f로컬 머신과 리모트머신 사이에 패스워드리스 SSH를 설정합니다.

하면 SSH를 하여 할 수 ./etc/phpmyadmin/config.inc.phpfile 에 다음 합니다. 을 사용하다

$cfg['Servers'][$i]['verbose']       = 'Remote Server 1'; // Change this to whatever you like.
$cfg['Servers'][$i]['host']          = '127.0.0.1';
$cfg['Servers'][$i]['port']          = '3307';
$cfg['Servers'][$i]['connect_type']  = 'tcp';
$cfg['Servers'][$i]['extension']     = 'mysqli';
$cfg['Servers'][$i]['compress']      = FALSE;
$cfg['Servers'][$i]['auth_type']     = 'cookie';
$i++;

도움이 더 필요할 경우를 대비해서 이 문제에 대해 좀 더 자세히 블로그에 글을 올렸습니다.

할 수 있지만 phpMyAdmin 설정을 변경해야 합니다.http://www.danielmois.com/article/Manage_remote_databases_from_localhost_with_phpMyAdmin 를 참조해 주세요.

어떤 이유로든 링크가 정지된 경우 다음 절차를 수행할 수 있습니다.

  • 인 phpMyAdmin을 .config.inc.php
  • :$cfg['Servers'][$i]['host']및 합니다.
  • :$cfg['Servers'][$i]['port']【mysql】【mysql】【mysql】【mysql】는 '이거'예요3306
  • :$cfg['Servers'][$i]['user'] ★★★★★★★★★★★★★★★★★」$cfg['Servers'][$i]['password']합니다.

서버가 올바르게 설정되어 있지 않은 경우, 로컬 접속보다 접속이 늦어질 수 있습니다.예를 들어 서버가 호스트명으로부터 IP 주소를 검색할 필요가 없게 하기 위해서, 호스트명 대신에 IP 주소를 사용하는 것이 약간 빠를 수 있습니다.

또한 이와 같이 접속하면 리모트데이터베이스의 사용자 이름과 패스워드가 플레인텍스트로 저장되므로 이 설정파일에 액세스 할 수 없는 것을 확인하는 순서를 실행할 필요가 있습니다.또는 사용자 이름 및 비밀번호 변수를 비워두면 로그인 시마다 입력하도록 요구되므로 훨씬 안전합니다.

이 블로그 투고를 팔로우 해 주세요.아주 쉽게 할 수 있어요.https://wadsashika.wordpress.com/2015/01/06/manage-remote-mysql-database-locally-using-phpmyadmin/

config.inc.php 파일에는 phpMyAdmin 설치를 위한 구성 설정이 포함되어 있습니다.어레이를 사용하여 접속할 수 있는 모든 서버의 구성 옵션 세트를 저장합니다.기본적으로 어레이는 사용자 자신의 머신 또는 localhost 중 하나뿐입니다.다른 서버에 접속하려면 설정 배열에 다른 설정 옵션세트를 추가해야 합니다.이 구성 파일을 편집해야 합니다.

먼저 phpMyAdmin 폴더에 저장된 config.inc.php 파일을 엽니다.wamp 서버에서는 wamp\apps\phpmyadmin 폴더에 있습니다.그런 다음 해당 파일에 다음 부분을 추가합니다.

$i++;
$cfg['Servers'][$i]['host']          = 'hostname/Ip Adress';
$cfg['Servers'][$i]['port']          = '';
$cfg['Servers'][$i]['socket']        = '';
$cfg['Servers'][$i]['connect_type']  = 'tcp';
$cfg['Servers'][$i]['extension']     = 'mysql';
$cfg['Servers'][$i]['compress']      = FALSE;
$cfg['Servers'][$i]['auth_type']     = 'config';
$cfg['Servers'][$i]['user']          = 'username';
$cfg['Servers'][$i]['password']      = 'password';

이 변수의 의미가 무엇인지 알아보겠습니다.

$i++ :- Incrementing variable for each server
$cfg[‘Servers’][$i][‘host’] :- Server host name or IP adress
$cfg[‘Servers’][$i][‘port’] :- MySQL port (Leave a blank for default port. Default MySQL port is 3306)
$cfg[‘Servers’][$i][‘socket’] :- Path to the socket (Leave a blank for default socket)
$cfg[‘Servers’][$i][‘connect_type’] :- How to connect to MySQL server (‘tcp’ or ‘socket’)
$cfg[‘Servers’][$i][‘extension’] :- php MySQL extension to use (‘mysql’ or ‘msqli’)
$cfg[‘Servers’][$i][‘compress’] :- Use compressed protocol for the MySQL connection (requires PHP >= 4.3.0)
$cfg[‘Servers’][$i][‘auth_type’] :- Method of Authentication
$cfg[‘Servers’][$i][‘username’] :- Username to the MySQL database in remote server
$cfg[‘Servers’][$i][‘password’] :- Password to the MySQL database int he remote server

이 구성 부분을 추가한 후 서버를 재시작하면 phpMyAdmin 홈페이지가 변경되어 서버를 선택하는 필드가 나타납니다.

이제 해당 데이터베이스의 사용자 이름과 비밀번호를 입력하여 서버를 선택하고 원격 데이터베이스에 액세스할 수 있습니다.

answer c.hill answer에서 설명한 바와 같이 안전한 솔루션을 원하는 경우 SSH 터널을 서버에 오픈하는 것이 좋습니다.

Windows 유저를 위한 방법은 다음과 같습니다.

  1. Putty 웹사이트에서 Plink와 Putty를 다운로드하여 원하는 폴더에 파일을 저장합니다(예시).C:\Putty)

  2. Windows CD에서 Plink CD로 이동합니다.cd C:\Putty

  3. SSH 터널을 열고 포트 3307로 수정합니다.

    plink -L 3307:localhost:3306 username@server_ip -i path_to_your_private_key.ppk

장소:

  • 3307은 리다이렉트하는 로컬포트입니다
  • localhost는 리모트서버상의 MySQL DB 주소입니다(디폴트로는 localhost).
  • 3306은 리모트서버의 PhpMyAdmin 포트 사용(디폴트로는 3306)

마지막으로 PhpMyAdmin을 설정할 수 있습니다.

  1. config.inc.php 끝에 다음 행을 추가하여 로컬 PhpMyAdmin 구성에 원격 서버를 추가합니다.

추가할 행:

$i++;   
$cfg['Servers'][$i]['verbose']          = 'Remote Dev server';
$cfg['Servers'][$i]['host']             = 'localhost';
$cfg['Servers'][$i]['port']             = '3307';
$cfg['Servers'][$i]['connect_type']     = 'tcp';
$cfg['Servers'][$i]['extension']        = 'mysqli';
$cfg['Servers'][$i]['compress']         = FALSE;
$cfg['Servers'][$i]['auth_type']        = 'cookie';
  1. 할 수 예요.http://127.0.0.1/phpmyadmin

리모트 서버에 접속할 때마다 콘솔을 열지 않으면 배치 파일을 작성합니다(명령줄을 .bat 파일에 저장).

phpMyAdmin 설치의 config.inc.php 파일에서 설정할 수 있습니다.

$cfg['Servers'][$i]['host'] = '';

댓글을 달았으면 좋았을 텐데 아직 평판이 좋지 않아요.

버전 4.5.4.1deb2ubuntu2 이하이며, 다른 버전 4.5.x 이후가 있을 것으로 추측됩니다.config.inc.php 파일은 변경할 필요가 없습니다.대신 conf.d에 디렉토리를 1개 더 추가해 주세요.

확장자가 '.php'인 새 파일을 만들고 행을 추가합니다.이는 모듈화된 접근방식으로 각 리모트 데이터베이스 서버의 액세스 정보를 격리합니다.

파일 라이브러리/config.default를 찾습니다.php

그러면 $cfg[']를 찾습니다.AllowArbitraryServer'] = false;

다음으로 true로 설정합니다.

주의:

on ubuntu는 /usr/share/sysmyadmin/sysmyadmin/config.default 경로에 있는 파일입니다.php

그러면 메인 PHMyAdmin 페이지에 새로운 파일명 SERVER가 표시됩니다.로컬 데이터베이스에 임의의 IP 또는 localhost를 추가할 수 있습니다.

맨 아래에 있는 파일 \phpMyAdmin\config.inc.php로 이동하여 호스트, 사용자 이름, 비밀번호 등의 호스팅 세부사항을 변경합니다.

Ubuntu의 경우

PHPMyAdmin 폴더에 있는 파일을 하나만 수정하면 됩니다."config.inc.inc.disc"를 선택합니다.config.inc.php에 다음 행을 추가합니다.

위치 : 일일치 file :/var/lib/phpmyadmin/config.inc.php ★★★/etc/phpmyadmin/config.inc.php

해당 파일을 편집할 권한이 없는 경우 이 명령을 사용하여 권한을 부여하십시오.

sudo chmod 777 /var/lib/phpmyadmin/config.inc.php

OR(다른 시스템에서는 이 두 위치에서 확인해야 할 수 있음)

sudo chmod 777 /etc/phpmyadmin/config.inc.php

다음 .config.inc.php

    $i++;
    $cfg['Servers'][$i]['auth_type']     = 'cookie';
    $cfg['Servers'][$i]['verbose'] = 'Database Server 2';
    $cfg['Servers'][$i]['host'] = '34.12.123.31';
    $cfg['Servers'][$i]['connect_type']  = 'tcp';
    $cfg['Servers'][$i]['compress']      = false;
    $cfg['Servers'][$i]['AllowNoPassword'] = false;

또한 서버 세부사항을 적절히 변경하십시오.

방법 1(멀티서버의 경우)

먼저 원래 설정의 백업을 만듭니다.

sudo cp /etc/phpmyadmin/config.inc.php      ~/ 

이제 /usr/share/doc/phpmyadmin/examples/에 config.manyhosts.inc.php 파일이 표시됩니다.아래 명령을 사용하여 /etc/phpmyadmin/에 복사하기만 하면 됩니다.

sudo cp /usr/share/doc/phpmyadmin/examples/config.manyhosts.inc.php \
        /etc/phpmyadmin/config.inc.php

config.inc.php를 편집합니다.

sudo nano /etc/phpmyadmin/config.inc.php 

검색 대상:

$hosts = array (
    "foo.example.com",
    "bar.example.com",
    "baz.example.com",
    "quux.example.com",
);

그리고 ip 또는 hostname 배열 저장을 추가하고(nano CTRL+X에서 Y를 누름) 종료합니다.완료

방법 2(단일 서버) config.inc.php를 편집합니다.

sudo nano /etc/phpmyadmin/config.inc.php 

검색 대상:

/* Server parameters */
if (empty($dbserver)) $dbserver = 'localhost';
$cfg['Servers'][$i]['host'] = $dbserver;

if (!empty($dbport) || $dbserver != 'localhost') {
    $cfg['Servers'][$i]['connect_type'] = 'tcp';
    $cfg['Servers'][$i]['port'] = $dbport;
}

대체 항목:

$cfg['Servers'][$i]['host'] = '192.168.1.100';
$cfg['Servers'][$i]['port'] = '3306';

192.168.1.100을 자신의 mysql IP 서버로 치환하는 것을 잊지 마십시오.

영어가 서툴러 죄송합니다(google translate 탓:D )

Wamp Server 가 인스톨 되어 있는 Windows 에서는, 설정 파일을 참조할 수 있습니다.

C:\wamp64\apps\phpmyadmin4.8.4\config.inc.php

볼로우 라인을 적절히 변경합니다.

$cfg['Servers'][$i]['host'] = '127.0.0.1';
$cfg['Servers'][$i]['port'] = 3306;//$wampConf['mysqlPortUsed'];
$cfg['Servers'][$i]['extension'] = 'mysqli';
$cfg['Servers'][$i]['auth_type'] = 'cookie';
$cfg['Servers'][$i]['user'] = '';
$cfg['Servers'][$i]['password'] = '';

의 엔트리를 모두/etc/http/conf.d/phpMyAdmin.conf

그리고 아래는 위 파일에 들어갑니다.

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8

   <IfModule mod_authz_core.c>
     # Apache 2.4
     <RequireAny>
       #ADD following line:
       Require all granted
       Require ip 127.0.0.1
       Require ip ::1
     </RequireAny>
   </IfModule>
   <IfModule !mod_authz_core.c>
     # Apache 2.2
     #CHANGE following 2 lines:
     Order Allow,Deny
     Allow from All
     Allow from 127.0.0.1
     Allow from ::1
   </IfModule>
</Directory>

그리고나서,

MySQL 프롬프트에서 아래 명령을 실행합니다.

GRANT ALL ON *.* to root@localhost IDENTIFIED BY 'root@<password>'

GRANT ALL ON *.* to root@'%' IDENTIFIED BY 'root@<password>'

참조용:IP에서 보안 보호된 PhpMyAdmin 액세스 허용

언급URL : https://stackoverflow.com/questions/16801573/how-to-access-remote-server-with-local-phpmyadmin-client

반응형