একাধিক সার্ভার অ্যাক্সেস করতে কীভাবে phpMyAdmin কনফিগার করবেন?


14

PhpMyAdmin কনফিগার করার উবুন্টু উপায় কী তাই আমি একাধিক মাইএসকিউএল সার্ভার পরিচালনা করতে এটি ব্যবহার করতে পারি? ডাটাবেস প্যারামিটারগুলি সেট করা আছে /etc/dbconfig-common/phpmyadmin.confতবে একক সার্ভারের সংযোগের পরামিতিগুলির জন্য কেবল সেখানে জায়গা রয়েছে। আমি এটিকে হ্যাক করতে পারি /etc/phpmyadmin/config-db.phpএবং /etc/phpmyadmin/config.inc.phpতবে আমি ধরে নিই যে আরও সুন্দর উপায় থাকতে হবে।


এটি করার জন্য কি কখনও নির্জনতা খুঁজে পেয়েছেন? আপনি উল্লিখিত ফাইলগুলির মধ্যে একটিতে হ্যাক করেছেন কি না?
Nanne

এই টিউটোরিয়ালটি ব্যাখ্যা করে যে আপনি কীভাবে একটি পিএইচপিএমওয়াই অ্যাডমিন ইনস্টলেশন থেকে একাধিক মাইএসকিউএল সার্ভার পরিচালনা করতে পারেন। সুরক্ষার কারণে, phpMyAdmin এবং যে কোনও দূরবর্তী মাইএসকিউএল সার্ভারের মধ্যে যোগাযোগ এসএসএল এনক্রিপশন ব্যবহার করছে

উত্তর:


8

মোটামুটি পুরানো প্রশ্ন, তবে অনুসন্ধানে এখনও প্রাসঙ্গিক।

পিএইচপিএমআইএডমিন কনফিগার করা ফাইলগুলির জন্য সাধারণ পিএইচপি এবং $cfg['Servers']কনফিগার করা সার্ভারগুলি পেতে অ্যারে ব্যবহার করে।

সুতরাং সঠিক উপায় হ'ল /etc/phpmyadmin/conf.dআপনি যে সার্ভারটি যুক্ত করতে চান তার জন্য একটি নতুন কনফিগারেশন ফাইল যুক্ত করা। ফাইলগুলি .phpঅন্তর্ভুক্ত করার জন্য কেবল এটির নাম শেষ করা দরকার তবে your_new_server.inc.phpধারাবাহিকতার জন্য ব্যবহার করা ভাল ধারণা ।

প্রদত্ত কনফিগার ফাইলের সর্বনিম্ন বিষয়বস্তু হ'ল:

<?php // let the interpreter know this is code
$cfg['Servers'][2]['host']     = 'THE_HOST';
$cfg['Servers'][2]['user']     = 'THE_USER';
$cfg['Servers'][2]['password'] = 'THE_PASSWORD';

অন্য উত্তরে বর্ণিত হিসাবে আপনি আরও পরামিতিগুলির জন্য /usr/share/doc/phpmyadmin/example/config.manyhosts.inc.php ফাইলটি পরীক্ষা করতে পারেন ।

গুরুত্বপূর্ণ: আপনাকে প্রতিটি নতুন ফাইলের জন্য অ্যারের সূচক (2) বাড়াতে হবে এবং লোকালহোস্টের সাথে সংযোগ রাখতে চাইলে 1 টি ব্যবহার করা এড়াতে হবে।

যদি সেই লোক (গুলি) সেই প্যাকেজটি পিএইচপিএমওয়াই অ্যাডমিন সম্পর্কে চিন্তা করে থাকে তবে তারা ডিরেক্টরিতে $iথাকা ফাইলগুলি অন্তর্ভুক্ত করে ভবিষ্যতের বর্ধনশীল ভেরিয়েবলটি যুক্ত conf.dকরতে পারত, তাই আপনি কেবল এটি সূচক হিসাবে ব্যবহার করতে পারতেন এবং না থাকার বিষয়ে চিন্তাভাবনা করবেন না ম্যানুয়ালি এটিকে বাড়িয়ে দিন, তবে দুঃখের বিষয় এটি নয়। আপনি নিজে এটি করতে পারেন।


[2019]: আরও নতুন পিএইচপি সংস্করণ এটিকে আরও সংযোজন বিকল্প সিনট্যাক্সের অনুমতি দেয়:

<?php $cfg['Servers'][] = ['host'=>'my_host', 'user'=>'my_user', 'password'=>'my_pass'];

আমি /etc/phpmyadmin/conf.d/slaveA.conf.php এ তালিকাবদ্ধ ন্যূনতম লিখিত সামগ্রীটি চেষ্টা করার চেষ্টা করেছি এবং কেবল পিএইচপিএমইএডমিন পৃষ্ঠার শীর্ষে সামগ্রীগুলি দেখেছি। আমি যখন সেই একই বিষয়বস্তুকে কনফিগার.ইন.পি.পি.পি. এর নীচে রেখেছি it এর সাথে অন্তর্ভুক্ত থাকা কিছু এটি মনে হচ্ছে গোলমাল করছে। অন্যথায়, এটি কাস্টম কনফিগারেশন তৈরির প্রত্যাশিত উপায় বলে মনে হচ্ছে যা আপডেটগুলিতে মারা যাবে না।
ফ্লিকফারফ্লি

1
@ ফ্লিকারফ্লি, দেরিতে উত্তর কিন্তু কনফিগার ফাইলগুলির কোডটি <?phpঅন্য কোনও পিএইচপি স্ক্রিপ্ট হিসাবে শুরু করতে হবে ।
মার্ক

4

আমি মনে করি এটি এটি করার সবচেয়ে সঠিক উপায়:

প্রথমে পাসওয়ার্ড সেটআপ করুন:

sudo htpasswd -c /etc/phpmyadmin/htpasswd.setup admin

তারপরে সুরক্ষা অক্ষম করুন:

sudo pma-configure

তারপরে http: // yourerver / phpmyadmin / setup এ যান (এখানে ব্রাউজারগুলি লেখককে জিজ্ঞাসা করে, ব্যবহারকারী প্রশাসক এবং পাসওয়ার্ড যা আপনি প্রথম কমান্ডে লেখেন) সেই উইজার্ডের সাহায্যে আপনি আপনার সার্ভারগুলি কনফিগার করেন, একবার হয়ে গেলে, রাখুন আবার সুরক্ষা:

sudo pma-secure

এই পদ্ধতির দ্বারা উত্পন্ন কনফিগার ফাইলটি /var/lib/phpmyadmin/config.inc.php এ সঞ্চিত থাকে।
মাইকেল লটন

এই পদ্ধতির দ্বারা উত্পন্ন এই কনফিগারেশন ফাইলটি /etc/phpmyadmin/config.inc.php এ মূল কনফিগারেশন ফাইলে অন্তর্ভুক্ত করা হয়। পিএইচপিএমআইএডমিন সেটআপ স্ক্রিপ্টটি উবুন্টুতে বগি এবং বিদ্যমান কনফিগারেশনটি লোড করে না (প্রতিটি বার আপনি এটি কনফিগার করলে আপনাকে স্ক্র্যাচ থেকে শুরু করতে বাধ্য করে)। এছাড়াও এটি যে কনফিগারেশনটি উত্পন্ন করে তাতে হ'ল ব্লা ফিশ সিক্রেটের মতো স্টাফ থাকে যা মূল কনফিগার ফাইল দ্বারা ওভাররাইট করা হয়। আপনি দেখতে পাবেন যে প্রথম সার্ভার (1) মূল কনফিগারেশন ফাইল দ্বারা ওভাররাইট করা হয়েছে, যা কনফিগারেশন- db.php থেকে সার্ভারের মানগুলি ব্যবহার করে।
মাইকেল লটন

2

আমি নিম্নলিখিতটি ধরে নিয়েছি:

  • /etc/phpmyadmin/ কনফিগার যোগ করার সবচেয়ে যুক্তিসঙ্গত জায়গা হবে
  • /etc/phpmyadmin/config-db.phpডিফল্ট (স্থানীয়?) কনফিগারেশনের জন্য অবস্থান। এটি, কারণ এটি একটি ডিফল্ট, কেবলমাত্র একটি ডিবি
  • /etc/phpmyadmin/config.inc.phpএটি একটি আছে তাই ডিফল্ট ডাটাবেস পড়ে। কমপক্ষে এটি ব্যবহার করা হয়েছে, সুতরাং আপনার কাছে একটি ডাটাবেস রয়েছে। আপনার কনফিগারেশনে যদি কিছু পরিবর্তন হয় তবে config-db.phpতা পরিবর্তিত হয়, সুতরাং আপনার ফাইলে 'স্থানীয়' পরিবর্তনগুলি পরিবর্তিত হয় না

সুতরাং আমার উপসংহারটি ছিল যে এই অংশের নীচে একটি অতিরিক্ত সার্ভার যুক্ত করা:

/* Configure according to dbconfig-common if enabled */
if (!empty($dbname)) {
    //reading from config-db.php
}

//$i++ was allready done in if above
//Adding extra servers
 $cfg['Servers'][$i]['host'] = 'serverhost.host.tld';
 $cfg['Servers'][$i]['extension'] = 'mysqli';
//...etc

এটি দেখতে সেরা জায়গার মতো দেখাচ্ছে।


1

পিএইচপিএমআইএডমিন ডকুমেন্টেশন অনুসারে আপনি ফাইলটিতে $cfg['Servers']সংজ্ঞায়িত অ্যারেতে একাধিক সার্ভার সংজ্ঞায়িত করতে পারেন config.inc.php


2
জেনেরিক পিএইচপিএমওয়াই অ্যাডমিন ইনস্টল করুন, হ্যাঁ। কনফিগারেশন.ইন.পি.পি.পি. ফাইলের সেই অংশটি তৈরি করার জন্য উবুন্টুর নিজস্ব কনফিগারেশন ফাইল রয়েছে এবং উবুন্টু কনফিগারেশনকে ওভাররাইড না করেই এটি কনফিগার করার উবুন্টু পদ্ধতিটি জানতে চাই।
মাইক স্কট

আমি দেখি. ফাইলটিতে মন্তব্যগুলি বলে You can regenerate it using: dpkg-reconfigure -plow phpmyadmin। আমি ধরে নিলাম তুমি চেষ্টা করেছ? (এটি এখন প্রোডাকশন সিস্টেমে করবেন না) এগুলি ছাড়া ... ম্যানুয়ালি পরিবর্তিত ফাইলগুলি ওভাররাইট করার আগে আপডেটে অনুরোধ করা উচিত।
কার্স্টেন থিল

2
হ্যাঁ, আমি কনফিগার- db.php ফাইলটি পুনরায় জেনারেট করতে পারি, তবে যে কনফিগার ফাইলটি থেকে এটি ডাটাবেস সংযোগের প্যারামিটারগুলি (/etc/dbconfig-common/phpmyadmin.conf) সূচিত করে কেবল একটি ডাটাবেস সার্ভার কনফিগার করার সুযোগ রয়েছে। আমি একাধিক ডাটাবেস সার্ভার কীভাবে কনফিগার করব তা জানতে চাই।
মাইক স্কট 10

+ মাইক স্কট, আমি একটি কনফিডে / ফাইলে কাজ করার জন্য $ সিএফজি ['সার্ভারস'] পেতে পারিনি, তবে আমি যখন এটি কনফিগারেশন.ইন.পি.পি.পিতে রেখেছিলাম তখন এটি ঠিকঠাক কাজ করেছিল। আমি ভাবছি কিছু বাগ আছে যা অন্তর্ভুক্ত বিবৃতি এর সাথে মিশে যায়।
ফ্লিকফার্লি

1

মূল কনফিগারেশন ফাইলটি সংরক্ষণ করা হয় /etc/phpmyadmin/config.inc.php। এই ফাইল অন্তর্ভুক্ত

  • ব্লোফিশ থেকে গোপনীয়তা /var/lib/phpmyadmin/blowfish_secret.inc.php
  • পিএইচপিএমআইএডমিন সেটআপ স্ক্রিপ্ট (ডায়গিউস 9 এর পদ্ধতি) থেকে তৈরি কনফিগারেশন /var/lib/phpmyadmin/config.inc.php
  • ডিবি মানগুলি /etc/phpmyadmin/config-db.phpযা থেকে উত্পন্ন /etc/dbconfig-common/phpmyadmin.confহয় /usr/sbin/dbconfig-generate-include/etc/dbconfig-common/phpmyadmin.confব্যবহার করে পরিবর্তন করা যেতে পারেdpkg-reconfigure -plow phpmyadmin
  • থেকে অতিরিক্ত কনফিগারেশন ফাইল /etc/phpmyadmin/conf.d/*.php

কিছু উদাহরণ কনফিগারেশন স্নিপেট /usr/share/doc/phpmyadmin/examplesঅন্তর্ভুক্ত রয়েছে config.manyhosts.inc.php। এই ফাইলটি যুক্ত করা যেতে পারে /etc/phpmyadmin/conf.d। এটি iকোনও হোস্ট তৈরি করার আগে ভেরিয়েবলটিকে 1 এ পুনরায় সেট করে কাজ করে যাতে এটি হোস্ট সেটটিকে ওভাররাইড করে /etc/phpmyadmin/config.inc.php

আপনি যদি আরও উন্নত কনফিগারেশন করতে চান তবে আপনি সম্ভবত /etc/phpmyadmin/config.inc.phpফাইলটি পরিবর্তন করতে এবং সম্ভবত অন্যান্য কনফিগারেশন এক্সটেনশনগুলি ব্যবহার করে যুক্ত করতে চাইবেন /etc/phpmyadmin/conf.d

পুরানো কনফিগারেশন ফাইলগুলিতে অতিরিক্ত কনফিগারেশনের জন্য সমর্থন যুক্ত করতে আপনি ডিরেক্টরিটি তৈরি করতে পারেন /etc/phpmyadmin/conf.dএবং তারপরে নীচের পিএইচপি কোডটি নীচে যুক্ত করতে পারেন /etc/phpmyadmin/config.inc.php:

/* Support additional configurations */
foreach (glob('/etc/phpmyadmin/conf.d/*.php') as $filename) {
        include($filename);
}
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.