


How can I configure phpMyAdmin's config.inc.php for essential settings like server connections?
Jun 25, 2025 am 12:08 AMTo configure config.inc.php in phpMyAdmin, begin by setting up server connection parameters, then select authentication types, optionally enable configuration storage, and adjust other useful settings. 1. Define each MySQL server using the $i index in the $cfg['Servers'] array, specifying host, port, socket, connect_type, extension, auth_type, user, and password. 2. Choose an authentication type—config, cookie (recommended), or http—and set a blowfish secret for cookie authentication. 3. Optionally enable configuration storage by creating the phpmyadmin database and importing create_tables.sql, then link tables like bookmarktable and relation in the config. 4. Adjust additional settings such as MaxRows, DefaultCharset, AllowRoot, and IP-based access control to enhance usability and security. Proper configuration ensures secure and efficient management of databases through phpMyAdmin.
Configuring config.inc.php
in phpMyAdmin is essential if you want to customize how the tool connects to your MySQL servers, sets up authentication, or enables certain features. The file usually lives in the main phpMyAdmin directory — often under /etc/phpmyadmin/config.inc.php
on Linux systems or wherever you installed it manually.
Here’s a breakdown of how to set up some of the most important parts of this file.
1. Basic Server Connection Settings
By default, phpMyAdmin allows connecting to one local MySQL server using cookie-based authentication. If you're managing multiple servers or remote databases, you need to adjust these settings.
Inside config.inc.php
, each server is defined with an index (like $i
) and added to the $cfg['Servers']
array. Here's a minimal setup for one server:
$i = 0; $i ; $cfg['Servers'][$i]['host'] = 'localhost'; $cfg['Servers'][$i]['port'] = ''; $cfg['Servers'][$i]['socket'] = ''; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['auth_type'] = 'cookie'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = '';
host
: Set this to the hostname or IP address of your MySQL server.port
: Usually blank unless you're using a non-standard port.connect_type
: Use'tcp'
for network connections or'socket'
for local Unix sockets.auth_type
: Common options are'cookie'
,'http'
, or'config'
. Cookie is secure and recommended.
If you're connecting to multiple servers, just repeat the block with $i
and change the values accordingly.
2. Authentication Types Explained
The auth_type
setting determines how users log into phpMyAdmin:
- config: Automatically logs in using the username and password in the config file. Not secure for public installations.
- cookie: Most commonly used. Prompts users for credentials and stores session info in a cookie.
- http: Uses HTTP authentication. Useful if you already have basic auth set up via Apache or Nginx.
For security, always use cookie
unless you're working in a very controlled environment like a dev machine.
To enable cookie-based login, make sure you also set a blowfish secret:
$cfg['blowfish_secret'] = 'your-secret-key-here'; /* Required for cookie auth */
This key can be any random string — think of it like a salt for encrypting cookies.
3. Enable Configuration Storage (Optional but Helpful)
Some advanced features like bookmarks, PDF schema generation, and tracking require a special database called phpmyadmin
. You’ll need to create this and import its structure from the sql/create_tables.sql
file included in phpMyAdmin.
Once that's done, update your config to point to it:
$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]['designer_coords'] = 'pma__designer_coords'; $cfg['Servers'][$i]['tracking'] = 'pma__tracking';
These lines tell phpMyAdmin where to store feature-specific data.
4. Other Useful Config Options
Here are a few more settings you might want to tweak:
Increase Max Rows Displayed
$cfg['MaxRows'] = 50;
Set Default Charset
$cfg['DefaultCharset'] = 'utf8mb4';
Disable Warnings for Root Login
If you're okay allowing root access via phpMyAdmin, suppress the warning:
$cfg['AllowRoot'] = true;
Limit Access by IP (for extra security)
You can wrap sensitive settings in a PHP condition:
if ($_SERVER['REMOTE_ADDR'] == '192.168.1.10') { $cfg['Servers'][$i]['auth_type'] = 'config'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = 'localpass'; }
That’s basically all you need to get started with configuring
config.inc.php
. It’s not overly complex, but getting the basics right helps avoid confusion and security issues down the line.The above is the detailed content of How can I configure phpMyAdmin's config.inc.php for essential settings like server connections?. For more information, please follow other related articles on the PHP Chinese website!

Hot AI Tools

Undress AI Tool
Undress images for free

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

Title: How to correctly configure Git in PyCharm In modern software development, the version control system is a very important tool, and Git, as one of the popular version control systems, provides developers with powerful functions and flexible operations. As a powerful Python integrated development environment, PyCharm comes with support for Git, allowing developers to manage code versions more conveniently. This article will introduce how to correctly configure Git in PyCharm to facilitate better development during the development process.

Title: The working principle and configuration method of GDM in Linux systems In Linux operating systems, GDM (GNOMEDisplayManager) is a common display manager used to control graphical user interface (GUI) login and user session management. This article will introduce the working principle and configuration method of GDM, as well as provide specific code examples. 1. Working principle of GDM GDM is the display manager in the GNOME desktop environment. It is responsible for starting the X server and providing the login interface. The user enters

PyCharm is a powerful integrated development environment (IDE), and PyTorch is a popular open source framework in the field of deep learning. In the field of machine learning and deep learning, using PyCharm and PyTorch for development can greatly improve development efficiency and code quality. This article will introduce in detail how to install and configure PyTorch in PyCharm, and attach specific code examples to help readers better utilize the powerful functions of these two. Step 1: Install PyCharm and Python

How to configure a workgroup in Win11 A workgroup is a way to connect multiple computers in a local area network, which allows files, printers, and other resources to be shared between computers. In Win11 system, configuring a workgroup is very simple, just follow the steps below. Step 1: Open the "Settings" application. First, click the "Start" button of the Win11 system, and then select the "Settings" application in the pop-up menu. You can also use the shortcut "Win+I" to open "Settings". Step 2: Select "System" In the Settings app, you will see multiple options. Please click the "System" option to enter the system settings page. Step 3: Select "About" In the "System" settings page, you will see multiple sub-options. Please click

Understanding Linux Bashrc: Function, Configuration and Usage In Linux systems, Bashrc (BourneAgainShellruncommands) is a very important configuration file, which contains various commands and settings that are automatically run when the system starts. The Bashrc file is usually located in the user's home directory and is a hidden file. Its function is to customize the Bashshell environment for the user. 1. Bashrc function setting environment

PyCharm is a commonly used integrated development environment (IDE). In daily development, using Git to manage code is essential. This article will introduce how to configure Git in PyCharm and use Git for code management, with specific code examples. Step 1: Install Git First, make sure Git is installed on your computer. If it is not installed, you can go to [Git official website](https://git-scm.com/) to download and install the latest version of Git

Title: How to configure and install FTPS in Linux system, specific code examples are required. In Linux system, FTPS is a secure file transfer protocol. Compared with FTP, FTPS encrypts the transmitted data through TLS/SSL protocol, which improves Security of data transmission. In this article, we will introduce how to configure and install FTPS in a Linux system and provide specific code examples. Step 1: Install vsftpd Open the terminal and enter the following command to install vsftpd: sudo

MyBatisGenerator is a code generation tool officially provided by MyBatis, which can help developers quickly generate JavaBeans, Mapper interfaces and XML mapping files that conform to the database table structure. In the process of using MyBatisGenerator for code generation, the setting of configuration parameters is crucial. This article will start from the perspective of configuration parameters and deeply explore the functions of MyBatisGenerator.
