Do these 3 things before closing this tab:
1Repair Windows errors before they cause bigger problems2Fix the driver behind crashes, sound loss and screen glitches3Clear out junk files and repair common Windows errorsiTechGuides is reader-supported. When you buy through links on our site, we may earn an affiliate commission. As an Amazon Associate I earn from qualifying purchases. Learn more
Need a server to try this on? Antihost offers Linux VPS plans with NVMe storage, full root access and a 14-day free trial.
The pma__table_uiprefs error means phpMyAdmin is configured to store per-user table-interface preferences in a table that is missing, misnamed, located in the wrong database, or inaccessible to its control user. Read pmadb and table_uiprefs in the active config.inc.php, create the table in that exact database from the same phpMyAdmin release, verify CRUD privileges, and reload phpMyAdmin. If you do not need persistent table preferences, set table_uiprefs to false instead.
What the error means
phpMyAdmin uses an optional configuration-storage database for settings that are separate from your application data. The $cfg['Servers'][$i]['table_uiprefs'] setting names the table where phpMyAdmin stores each user’s table-browsing choices, including column sorting, column order, and column visibility.
The setting works together with $cfg['Servers'][$i]['pmadb']. pmadb identifies the database that holds phpMyAdmin’s configuration tables; table_uiprefs identifies the table inside that database. In the conventional sample configuration, those values are phpmyadmin and pma__table_uiprefs. The two names must match objects that really exist on the same server.
This is not an application table from one of your project databases. Re-creating it in a business database, even if the table name is correct, will not satisfy phpMyAdmin when pmadb points elsewhere.
#1 Best Overall
- Powerful Turbo Fan:CAGIWIRU Electric Air Duster have reached speed up to 130000RPM,Can efficient remove dust and debris.With LED light and Three Adjustable Speed to meet with different cleaning tasks.
- With Attached USB C Fasting Charging cable.Charing 3 hours,Enjoy up to 240 minutes of use on the lowest setting, For third speed can use for 25mins.with four charging options to meet with your needs.
- Wide Application: attached 5 different nozzles,making it suitable for a variety of scenes, such as car,pet, pc, keyboards, and other electronic devices. It also serves for office and home clean duster.
- Handy Design & Portable:Cordless air duster electric nozzle is Light weight and small size, design and comfortable to hold and space saving, convenient to carry around. You can put it in your room or inside the car without taking up space.
- Economical &Reusable: Built durable materials with a long-lasting battery,our CAGIWIRU air duster it's a sustainable alternative to disposable air cans.
Before changing anything
- Confirm which phpMyAdmin installation is serving the request. Multiple installations can have different
config.inc.phpfiles. - Back up the active configuration file and, if you are modifying an existing configuration database, take a normal database backup.
- Use the SQL files shipped with the same phpMyAdmin release whenever possible. A copied schema from an older release can omit tables or columns required by the current version.
- Make changes with an account that is allowed to inspect the configuration database and grant privileges, or involve the administrator of a managed database service.
Step 1: Read the active configuration
Open the config.inc.php used by the running phpMyAdmin instance. The file is normally in the phpMyAdmin installation directory, but the exact path depends on how the package or web server was installed. Search for the server entry that contains pmadb and table_uiprefs.
$cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';
$cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs';
Record the values exactly, including capitalization and underscores. The conventional table name contains two underscores between pma and table, and two underscores between table and uiprefs. Your installation may intentionally use a different name; in that case, repair the configured name rather than assuming the conventional one.
Windows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallOutdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchIf the setting is already false, phpMyAdmin is not supposed to use this table. An error naming pma__table_uiprefs then usually comes from a different server entry, a different installation, or a stale configuration file being loaded by the web server.
Step 2: Check the table in the configured database
Connect to the database named by pmadb, not automatically to a database named phpmyadmin. Run a metadata query with the exact table name:
SHOW TABLES LIKE 'pma__table_uiprefs';
The backslashes escape underscores so the query matches literal underscores rather than treating them as single-character wildcards. An empty result means the table is absent from that database. You can perform the same check in phpMyAdmin by opening the configured database and looking through its table list.
If the table appears in another database, that does not resolve the error. Either create the table in the configured pmadb database or deliberately change pmadb to the database that is intended for phpMyAdmin’s configuration storage, then verify all of the other configuration tables are there as well.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Rank #2
- Screen Cleaner is Your Screen’s New Bestfriend! - EVEO is proud to present a screen cleaner that’s perfectly suited for your TV. Meet your new screen cleaner, computer screen cleaner, laptop cleaner, iPad cleaner, Macbook,tv cleaner or any other electronic device. Our screen cleaner spray and wipe along with the included plush microfiber cloth, easily removes dust, fingerprints & other smudges on the screen’s surface. Clean effectively for a streak-free screen
- Gentle on your Screens - Our screen cleaner spray and wipes is compatible to be used even for the most sensitive LCD, LED, CRT, and OLED screens in proper use. Be at ease knowing that this product is compatible with all the major brands: LG, SONY, Samsung, Sharp, iPad, iPhone, Android screens, Kindle, PC monitors - we’ve got you covered! Can be used as LCD screen cleaner, tv cleaner, smart tv screen cleaner, and more
- Premium Super Soft Plush Microfiber Cloth - Included in this efficient screen cleaning kit. This screen cleaner spray and wipe has our signature plush microfiber cloth specially designed to comply with screens and monitors and leave them streak-free. Has been shown to effectively absorbs stubborn stains, zero streaks, and no fiber shedding. Always use this together with our screen cleaner for the best results
- Easy-to-Use Screen Cleaner Kit + microfiber cleaning cloth - The EVEO Screen Cleaning Kit will easily be your new favorite tool when it comes to taking care of the things you love most, quick and easy solution for a streak-free screen. Simply screw on the sprayer gun on the screen cleaner bottle. Spray the cleaning liquid onto the microfiber cloth, then wipe the screen until desired cleanliness & shine is achieved.
- Quality Screen Care Kit Worth Purchasing - Enjoy a convenient Screen Cleaner anytime, anywhere you need it. Your satisfaction is our top priority. We stand behind the quality of our products and that’s why, you shouldn’t be worrying at all. We manufacture the Best Screen Cleaner. and can be used for laptop cleaning kit, laptop screen cleaner, tv screen cleaner for smart tv. MacBook screen cleaner, monitor cleaner or screen cleaner spray for electronic devices with microfiber cleaning cloth
Step 3: Create the configuration tables
Preferred method: the Operations tab
phpMyAdmin’s setup documentation states: “When entering a database where the configuration storage tables are not present, phpMyAdmin offers to create them from the Operations tab.” Open the database named by pmadb, select its Operations tab, and use the offered action to create the configuration storage. This method uses phpMyAdmin’s own installation workflow and is preferable when it is available.
After creation, refresh the database’s table list and confirm that pma__table_uiprefs exists. The Operations action may create several configuration tables, not just this one; that is expected when the storage database is new.
Fallback method: import the release-matched SQL file
If the Operations option is not displayed, locate resources/sql/create_tables.sql inside the phpMyAdmin installation. Import that file into the database named by pmadb. Use the copy bundled with the installed release rather than downloading or reusing an unverified file from a different version.
In the phpMyAdmin interface, select the configured storage database, open Import, choose the bundled SQL file, and execute it. From a MySQL or MariaDB client, select the target database first and then source the file using the client syntax appropriate to your environment. The important requirement is that the statements execute against the configured pmadb database.
The Tool Desk
Outbyte PC Repair FREERepair Windows errors before they cause bigger problemsFix Now →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Do not import the file into an application database merely because that database is currently open in your SQL client. Check the selected schema before running the import.
The expected pma__table_uiprefs schema
The documented table contains one row for each user, database, and table combination. Its composite primary key prevents duplicate preference records for the same combination.
Rank #3
- 【Large size】:Measuring 800 x 300 mm/ 31. 5×12 inches, which is wider and taller than others. Large mouse pad can perfectly fit your keyboard and mouse of any size, and there is also ample space for peripherals such as phones, tablets, etc.
- 【LED backlight mouse pad】:Blade Hawks RGB mouse pad provides 7 static modes and 7 dynamic modes will give you the options you are looking for. Power-off memory function remembers the last lighting mode you selected. The super glow fiber Chroma will give you a colorful gaming setup that you want.
- 【Anti-slip rubber base】:Made from Natural rubber, this gaming mousepad will firmly grip your desktop, allowing you to enjoy the ultimate precision in the games you are most passionate about. It also comes with a texture that enhances this ability even further.
- 【Smooth and waterproof surface】: Micro-textured cloth surface, for extremely precise mouse control and a smooth movement. When liquid splashes on the gaming mouse pad, it forms water droplets and slides down. Will not delay your work or gameplay.
- 【Plug and play】: This mouse and keyboard pad is powered by USB, plug and play, no driver required. One button control light modes. Press one time to change the lighting mode, press twice to change the brightness, press and hold about 3 seconds turn ON/OFF.
CREATE TABLE IF NOT EXISTS `pma__table_uiprefs` (
`username` varchar(64) NOT NULL,
`db_name` varchar(64) NOT NULL,
`table_name` varchar(64) NOT NULL,
`prefs` text NOT NULL,
`last_update` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`username`,`db_name`,`table_name`)
) COMMENT='Tables'' UI preferences' DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
This definition is a reference for identifying the expected shape. The create_tables.sql file shipped with your installed release is the authoritative migration input, because phpMyAdmin versions can add or change configuration-storage requirements.
username,db_name, andtable_nameare eachvarchar(64)and required.prefsis required text containing the serialized interface preferences.last_updaterecords when the preference row was last changed.- The primary key is the combination of
username,db_name, andtable_name, not any one column alone.
If you create the table manually, compare the result with the release-matched file afterward. Hand-entering only the table shown above can leave other configuration-storage tables missing.
Step 4: Give the control user the required privileges
phpMyAdmin normally uses the account configured as $cfg['Servers'][$i]['controluser'] for configuration storage operations. The setup documentation requires that account to have SELECT, INSERT, UPDATE, and DELETE rights on the configuration database.
Apply equivalent least-privilege grants to the actual control user and host shown in your configuration. For example, if the database is phpmyadmin and the account is authenticated from localhost:
GRANT SELECT, INSERT, UPDATE, DELETE
ON `phpmyadmin`.*
TO 'controluser'@'localhost';
Do not copy the example literally if your pmadb, account name, authentication host, or database server differs. A grant to 'controluser'@'localhost' does not automatically grant access to the same username connecting from another host. On managed hosting, ask the database administrator to apply these four privileges to the configured control account.
After changing grants, reload phpMyAdmin and test a table browse operation. The account needs to read existing preference rows and create, modify, or remove them as users change their table layout.
Free tools Windows power users keep installed
One-click scans. No signup required.
Rank #4
- 【Softer and More Comfortable】Vaydeer wrist rest has unique diamond pattern, which is the combination of softness and aesthetics. The materials of wrist rest are improved into higher quality memory foam and covered with silky smooth lycra. The computer wrist rest makes you as comfortable and cushiony as like rest your wrists on clouds.
- 【Ergonomic Wrist Saver】The wrist rests for keyboard and mouse comes with a 17.32×3.15×0.83 inch keyboard wrist pad and a 5.94×3.15×0.83 inch mouse wrist support. Based on ergonomic design, the unique concave shape is the perfect fit for your wrist joints. The wrist rest pad fits most computer keyboards and laptops, improve hand and wrist posture, release your wrist and arm stress.
- 【Non-Slip Rubber Bottom】Featuring an anti-skid silicone base on the bottom, this wrist keyboard support stays firmly in place on your desk, preventing the padding from sliding around, ensuring stable and consistent wrist support during extended computer sessions.
- 【Better Experience & Pain Relief】Our keyboard arm rest is beneficial to alleviate the soreness caused by direct contact and friction between your arm and a hard desk surface, reducing the risk of wrist fatigue or carpal tunnel. The soft texture of memory foam can evenly distribute the pressure around your wrists and provide good support with just enough give.
- 【Helpful in Multiple Scenarios】Whether you're working, studying, writing, typing, gaming, this keyboard and mouse rest combo is an essential accessory to add comfort and support to your hands and wrists. It’s also a great gift for men, women, family, friend, coworker, gamer, teacher, etc.
Step 5: Check upgrade history
An installation that worked before an upgrade can fail when the upgrade crossed a documented configuration-schema boundary without running its migration. The setup documentation identifies these upgrade files:
| Upgrade path | Script named by the setup documentation | When to use it |
|---|---|---|
| Older MySQL table format to the 4.1.2-and-newer path | upgrade_tables_mysql_4_1_2+.sql |
Only when your upgrade crossed that corresponding version boundary |
| Column-information changes for the 4.3.0-and-newer path | upgrade_column_info_4_3_0+.sql |
Only when the installed and previous versions require that migration |
| Table upgrades for the 4.7.0-and-newer path | upgrade_tables_4_7_0+.sql |
Only when your upgrade crossed the documented 4.7.0 boundary |
Run only the script applicable to the versions you actually crossed, then use the current release’s create_tables.sql to create any new tables. Do not run every upgrade script indiscriminately on a current installation; migrations are version-specific.
If you do not know which versions were previously installed, preserve a backup and have the administrator compare the existing configuration schema with the migration notes for the installed release before applying a script.
Step 6: Reload and verify the repair
- Save
config.inc.phpand confirm there are no syntax errors, especially unmatched quotes or semicolons. - Refresh phpMyAdmin in a new request. If your deployment has PHP opcode caching or a reverse proxy, clear or reload that cache according to its normal administration procedure.
- Open the database named by
pmadband verify thatpma__table_uiprefsis present. - Browse a table, change a visible column or sort order, and reload the table. A working configuration storage setup should retain the preference for that user.
- Inspect the phpMyAdmin error message again. If it now reports a different
pma__table, create the missing configuration storage from the same release-matched SQL file rather than treating each table as an application-data problem.
Common causes and targeted fixes
The table exists, but in another database
Compare the database selected in your SQL client with the value of pmadb. Move or recreate the configuration tables in the configured database, or intentionally update pmadb and then verify the complete configuration-storage set. A matching table name in the wrong schema is still unavailable to phpMyAdmin.
Recommended Free Tools
The table name has the wrong underscores
Compare table_uiprefs character by character. The conventional value is pma__table_uiprefs, with double underscores in both separators. If your actual table has a custom name, either change the configuration to that exact name or rename/create the table according to your release’s schema. Do not silently change a custom naming convention without checking other configuration-table settings.
The configuration tables were never imported
A fresh installation can have a valid phpMyAdmin interface but no configuration database. Use the Operations-tab creation action or import the bundled resources/sql/create_tables.sql into pmadb. Creating only pma__table_uiprefs may leave other optional features broken.
Best Value
- 【No Drill Mounted】Cable management tray can be assembled in as little as 3 minutes or less-simply. Side clips easily clampe the edge of desk, pass through the holes on the sides, and secure excess cables with baskets. Desk cable management supports inward or outward installation to meet your needs in different scenarios, and provides you with great convenience when collecting and organizing wires.
- 【Rubber Pad Protects Desk】Wire organizer under desk built-in soft rubber pads on the clamp protect your desk from scratches, so you will not damage your furniture or office.
- 【Sturdy and Beautiful】Cord management under desk is made of high-quality carbon steel and holds about 15 lbs. The wire basket has 2 holes on each side of the tray to enable your cables to pass freely. Cable baskets are suitable for desk thickness use from 0.4" to 2.4".
- 【Space Saving & Keep Organized】Desk cable management tray holds all your power cords, outlet strips, USB hubs and computer transformers hidden from your feet, and the data cables will not enter the vacuum cleaner to keep your desk clean and tidy. Desk wire organizer is also suitable for use in the kitchen and outdoors.
- 【Reduce Safety Risks】Cable tray under desk keeps all plugs away from your kids, no more worry about tripping. Using 2 holes wire tray saves extra space, helps you easily cabling and wire protection. The mesh design is not easy to accumulate dust, but avoids safety accidents caused by messy wires.
The control user cannot perform CRUD operations
If the table exists but errors continue when preferences are saved, test the control user’s access. It must be able to select, insert, update, and delete rows in the configuration database. Check both the username and the host portion of the account grant; MySQL treats different host specifications as different accounts.
An upgrade left an old schema behind
Review the version path and apply only the corresponding documented upgrade script. Then run the current release’s table-creation file for tables introduced by the newer release. An old copied schema can look nearly correct while still lacking a required table or column.
A different configuration file is being loaded
If your edits appear to have no effect, verify the web server’s phpMyAdmin document root, package version, and active configuration include. Multiple installations, containers, or virtual hosts can expose different copies. The values displayed by the running instance must be the values you repair.
Choose the appropriate repair path
| Situation | Recommended action | Effect |
|---|---|---|
| Configuration database is present and the Operations action is offered | Use the Operations tab to create missing storage tables | phpMyAdmin creates the expected storage set through its interface |
| Operations action is unavailable | Import the installed release’s resources/sql/create_tables.sql into pmadb |
Creates the release-matched schema manually |
| You want preferences to persist | Keep table_uiprefs enabled, create the table, and grant CRUD rights |
Sorting, column order, and visibility can be retained per user and table |
| You do not need persistent table preferences | Set $cfg['Servers'][$i]['table_uiprefs'] = false; |
Disables this optional storage feature; the missing table is no longer required for it |
| Schema was inherited from an older release | Use only the applicable versioned upgrade script, then the current create_tables.sql |
Brings configuration storage through the documented upgrade path |
| Database privileges are managed by a hosting provider | Supply the configured database, control user, and required four privileges to the provider | The provider can apply the grant without giving you broader administrative access |
When disabling table_uiprefs is the better choice
table_uiprefs is optional. If users do not rely on saved column layouts, or if policy does not permit phpMyAdmin to maintain a configuration database, set:
$cfg['Servers'][$i]['table_uiprefs'] = false;
Place the setting in the active server configuration and reload phpMyAdmin. This removes the dependency for persistent table-interface preferences; it does not repair other missing configuration-storage tables or fix unrelated permission errors. If you later want saved preferences, restore the table name, create the table in pmadb, and grant the control user the required privileges.
Quick Recap
What not to do
- Do not create
pma__table_uiprefsin an arbitrary application database. - Do not change only the table name while leaving
pmadbpointed at a different schema. - Do not assume a table visible to your administrative login is writable by phpMyAdmin’s
controluser. - Do not import an old SQL file over a newer installation without checking the release and migration path.
- Do not run every upgrade script as a precaution; use the script that matches the versions crossed.
- Do not grant broad administrative privileges when the documented SELECT, INSERT, UPDATE, and DELETE rights are sufficient.
Quick verification checklist
config.inc.phpbeing edited is the one used by the running phpMyAdmin instance.pmadbnames the database where configuration tables actually reside.table_uiprefsexactly matches the real table name, including both pairs of underscores.SHOW TABLES LIKE 'pma__table_uiprefs';returns the expected table in that database.- The table schema came from the same phpMyAdmin release or its documented migration path.
- The configured control user has SELECT, INSERT, UPDATE, and DELETE on the configuration database.
- Any applicable upgrade script was run once, and only for the version boundary crossed.
- phpMyAdmin was reloaded after configuration and privilege changes.
- If persistent preferences are unnecessary,
table_uiprefsis explicitly set tofalse.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

