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 reinstallCrashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteSet up two separate credentials for a self-hosted WordPress installation: a scoped FTP/SFTP account for site files and a MySQL or MariaDB user for the WordPress database. Create each in your hosting panel, put the database values in wp-config.php, grant only the database privileges WordPress needs, and verify file ownership so updates can run without unnecessary administrator access.
Antihost offers managed WordPress hosting with free migration, one-click staging and a 14-day free trial.
This guide covers cPanel and Plesk workflows, hosts that disable plain FTP, permission problems that trigger WordPress’s FTP-credentials prompt, and safe testing and rotation procedures.
As an Amazon Associate I earn from qualifying purchases.
Understand the two accounts before creating either one
An FTP or SFTP account authenticates to the server’s file-transfer service. It can read, upload, replace and delete files within the directory assigned to it, depending on the host’s restrictions. A database user authenticates to MySQL or MariaDB and operates on the database to which it is attached. These credentials are independent: changing an FTP password does not change the database password, and a database user cannot repair a missing WordPress theme file.
WordPress’s normal installation and administration require server login access through FTP or a shell and a supported MySQL or MariaDB database. The procedure below assumes a self-hosted WordPress site on hosting you control. A hosted service that does not expose the server filesystem or database will use its own management interface instead.
#1 Best Overall
- Entry-level NAS Personal Storage:UGREEN NAS DH2300 is your first and best NAS made easy. It is designed for beginners who want a simple, private way to store videos, photos and personal files, which is intuitive for users moving from cloud storage or external drives and move away from scattered date across devices. This entry-level NAS 2-bay perfect for personal entertainment, photo storage, and easy data backup (doesn't support Docker or virtual machines).
- Set Your Devices Free, Expand Your Digital World: This unified storage hub supports massive capacity up to 64TB.*Storage drives not included. Stop Deleting, Start Storing. You can store 22 million 3MB images, or 2 million 30MB songs, or 43K 1.5GB movies or 67 million 1MB documents! UGREEN NAS is a better way to free up storage across all your devices such as phones, computers, tablets and also does automatic backups across devices regardless of the operating system—Window, iOS, Android or macOS.
- The Smarter Long-term Way to Store: Unlike cloud storage with recurring monthly fees, a UGREEN NAS enclosure requires only a one-time purchase for long-term use. For example, you only need to pay $459.98 for a NAS, while for cloud storage, you need to pay $719.88 per year, $2,159.64 for 3 years, $3,599.40 for 5 years. You will save $6,738.82 over 10 years with UGREEN NAS! *NAS cost based on DH2300 + 12TB HDD; cloud cost based on 12TB plan (e.g. $59.99/month).
- Blazing Speed, Minimal Power: Equipped with a high-performance processor, 1GbE port, and 4GB RAM on Board, this NAS handles multiple tasks with ease. File transfers reach up to 125MB/s—a 1GB file takes only 8 seconds. Don't let slow clouds hold you back; they often need over 100 seconds for the same task. The difference is clear.
- Let AI Better Organize Your Memories: UGREEN NAS uses AI to tag faces, locations, texts, and objects—so you can effortlessly find any photo by searching for who or what's in it in seconds. It also automatically finds and deletes similar or duplicate photo, backs up live photos and allows you to share them with your friends or family with just one tap. Everything stays effortlessly organized, powered by intelligent tagging and recognition.
Map the installation before you create accounts
Find the document root
The document root is the directory from which your domain serves web files. Common panel labels include public_html, httpdocs, www, or a domain-specific folder, but the correct name depends on the host. Open the hosting File Manager, locate wp-admin, wp-content and wp-includes, and record the directory that contains all three. That is the WordPress installation directory to use when scoping the transfer account.
If the domain points to a subdirectory, do not assume the account should be rooted at the account’s home directory. Confirm the path in the domain or virtual-host settings. A transfer login that opens one level above the site can expose unrelated files; one rooted below the installation may prevent updates from reaching required directories.
Collect the values you will need
- The exact WordPress document-root path.
- The database name you intend to use.
- The database username and a long, unique password.
- The database host value supplied by the provider, such as a local socket name or hostname.
- The transfer protocol the host supports: SFTP, FTP over SSL/TLS, plain FTP, or a panel File Manager.
- The hostname, port and encryption settings shown by the host for that protocol. Do not guess these values when the provider supplies them.
Choose SFTP, FTP over SSL, plain FTP or File Manager
| Method | What it protects | When to use it | Important limitation |
|---|---|---|---|
| SFTP over SSH | Encrypts the password and transferred data between your computer and the site. | Preferred when the host offers it and provides a restricted account. | SSH/SFTP access can add, change or remove site files and settings; it is powerful administrative access, not a narrowly defined WordPress action. |
| FTP over SSL/TLS | Encrypts the FTP session when correctly configured. | Use when the host supports encrypted FTP but not SSH-based SFTP. | The host may use different connection modes and certificates; follow its documented settings. |
| Plain FTP | Does not encrypt credentials or file contents in transit. | Only where no encrypted option exists and the connection risk is understood. | A network observer may capture the password and transferred data. |
| Hosting File Manager | Uses the hosting panel’s authenticated web session. | Useful when the provider has disabled FTP or SFTP, or for a one-time repair. | It is tied to panel access and is less convenient for repeated local synchronization. |
WordPress describes SFTP as FTP with the password and other data encrypted while transmitted. Use the host’s exact protocol label: SSH-based SFTP is different from FTP over SSL/TLS even though both provide encryption.
Create a dedicated FTP or SFTP account
cPanel
- Sign in to cPanel and open Files > FTP Accounts.
- Enter a descriptive login, choose the domain, and generate a unique password. Keep this credential separate from the cPanel password.
- In the directory field, enter the WordPress installation path you recorded earlier. cPanel may display a home-directory prefix automatically; verify that the resulting path contains
wp-admin,wp-contentandwp-includes. - Set the quota only if you have a deliberate storage policy. A quota that is too low can make media uploads fail.
- Save the account. cPanel will show the username and, where enabled by the provider, the connection details needed by an FTP/SFTP client.
Plesk or another panel
Open the domain’s hosting or FTP-account section, create a new account, and set its home directory to the WordPress document root. Plesk exposes an equivalent database-and-user workflow as well. Panel names differ, so use the domain-specific account rather than an unrestricted server account when both are offered.
When FTP is disabled
Some providers remove the FTP Accounts interface entirely. Use the provider’s SFTP option if available; otherwise use File Manager for the required operation and ask the host which secure transfer method it supports. Do not enable an unencrypted service merely to satisfy a WordPress prompt without understanding the risk.
Test the file account before relying on it
- In your transfer client, enter the host, username, password, protocol and port supplied by the provider.
- Connect and confirm that the initial directory is the WordPress root, or navigate to it without escaping the account’s intended scope.
- Download a small, non-sensitive file to confirm read access.
- Create a temporary file in a safe test directory, then delete it, to verify write and delete behavior. Do not test by overwriting
wp-config.phpor a live plugin. - Disconnect and remove the temporary file through the same account or File Manager.
If the login succeeds but opens the wrong directory, edit the account’s home-directory or path setting in the hosting panel. If the login is rejected, copy the host’s protocol and encryption settings exactly; an SFTP account cannot be tested with an FTP-only connection mode.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesRank #2
- 【Advanced Home Data & Media Hub】For advanced home users who need phone backup, file storage, and centralized data management. Centralize family photos, 4K videos, movies, computer backups, and personal files in one place while running multiple apps for home entertainment and everyday data management. Suitable for households with growing digital libraries and multiple NAS use cases.
- 【Built for Creators, Media Servers & Advanced Apps】Powered by the Intel N100 Quad-Core CPU, 8GB DDR5 RAM, 2.5GbE networking, and dual M.2 NVMe slots, DXP2800 handles large files and heavier workloads with ease. Run Docker, virtual machines, and media server applications compatible with Plex—ideal for content creators, tech enthusiasts, and advanced home users managing 4K videos, RAW photos, personal media libraries, and multiple NAS apps.
- 【Up to 80TB for Growing Digital Libraries】 Supports up to 80TB of storage using two HDD bays and two M.2 NVMe SSD slots for family photos, movies, RAW photos, 4K videos, work files, and device backups. AI photo management supports recognition of people, objects, scenes, and locations, album organization, and duplicate photo detection. HDDs and SSDs are not included.
- 【AI-powered Home Surveillance】Turn DXP2800 into a centralized home surveillance hub by connecting compatible network cameras and storing recordings locally on your NAS. AI-powered features include Face Recognition, People Detection, and Pet Detection, helping advanced home users review important events more efficiently while managing home surveillance and personal data in one place.
- 【One data Center Across Your Devices】Keep files from desktops, laptops, phones, tablets, and other devices together instead of scattered across cloud accounts and external drives. Access, back up, organize, and share data across Windows, macOS, Android, iOS, web browsers, and compatible smart TVs—ideal for creators and advanced home users working across multiple devices.
Create the WordPress database and database user
cPanel MySQL Database Wizard
- Open Databases > MySQL Database Wizard.
- Enter a database name and record the complete name. Many cPanel installations prepend the account name, so the value WordPress needs may differ from the suffix you typed.
- Create a database user with a strong, unique password. Record the complete username, including any panel-added prefix.
- Add the user to the database.
- On the privileges screen, select the permissions required for normal WordPress operation, discussed below, and save.
cPanel’s separate MySQL Databases interface can be used to verify that the database and user are attached. Plesk provides a corresponding database page where you create the database, create its user and assign the user to it.
Keep the database and transfer credentials distinct
Do not reuse the FTP/SFTP password for the database user. A stolen transfer credential exposes files; a stolen database credential exposes site content and account data. Separate passwords make rotation and incident investigation more manageable.
Put the exact database values in wp-config.php
WordPress reads four connection constants from wp-config.php. Edit the file in File Manager, through SFTP, or through a shell only after making a protected backup. Replace the example values with the complete strings shown in your hosting panel:
define( 'DB_NAME', 'database_name' );
define( 'DB_USER', 'database_user' );
define( 'DB_PASSWORD', 'use-a-unique-database-password' );
define( 'DB_HOST', 'database-host-supplied-by-provider' );
- DB_NAME: the database name, including any account prefix.
- DB_USER: the attached database username, including any prefix.
- DB_PASSWORD: the password assigned to that database user, copied exactly.
- DB_HOST: the host value supplied by the provider. It is often local, but some environments use a separate database server.
Whitespace inside the quoted value, a missing prefix or a password changed in the panel but not in the file will produce a database connection error. Preserve the rest of wp-config.php, including its salts and any host-specific settings.
Recommended Free Tools
Grant only normal WordPress data privileges
For ordinary operations such as publishing posts, uploading media, receiving comments, creating WordPress users and installing plugins, WordPress’s hardening guidance identifies four normal data privileges: SELECT, INSERT, UPDATE and DELETE. These allow WordPress to read and change rows without making the account a general database administrator.
| Privilege | Why WordPress uses it | Should a normal site user receive it? |
|---|---|---|
| SELECT | Reads options, posts, users and other stored data. | Yes |
| INSERT | Creates posts, comments, metadata and other records. | Yes |
| UPDATE | Changes settings, content and metadata. | Yes |
| DELETE | Removes records when administrators or cleanup routines do so. | Yes |
| Administrative or schema-changing privileges | Used for broader database administration rather than routine content operations. | Do not grant by default; add only for a documented migration or maintenance task and remove afterward. |
The panel may offer an “all privileges” checkbox. It is convenient during installation but broader than the normal WordPress data requirement. If your host exposes individual controls, select the four data privileges and any narrowly justified temporary privilege separately.
Rank #3
- Value NAS with RAID for centralized storage and backup for all your devices. Check out the LS 700 for enhanced features, cloud capabilities, macOS 26, and up to 7x faster performance than the LS 200.
- Connect the LinkStation to your router and enjoy shared network storage for your devices. The NAS is compatible with Windows and macOS*, and Buffalo's US-based support is on-hand 24/7 for installation walkthroughs. *Only for macOS 15 (Sequoia) and earlier. For macOS 26, check out our LS 700 series.
- Subscription-Free Personal Cloud – Store, back up, and manage all your videos, music, and photos and access them anytime without paying any monthly fees.
- Storage Purpose-Built for Data Security – A NAS designed to keep your data safe, the LS200 features a closed system to reduce vulnerabilities from 3rd party apps and SSL encryption for secure file transfers.
- Back Up Multiple Computers & Devices – NAS Navigator management utility and PC backup software included. NAS Navigator 2 for macOS 15 and earlier. You can set up automated backups of data on your computers.
Fix file ownership and write permissions
WordPress can update files directly only when the PHP process has an appropriate ownership and permission arrangement. The correct scheme varies by host: PHP may run as the site account, as a web-server user, or through a group configured by the provider. Incorrect ownership can prevent plugin updates, media uploads and automatic core updates even when the FTP login works.
- Ask the host which account or group PHP uses for this domain.
- Make the WordPress files and directories owned by the account or group expected by that PHP configuration.
- Use the provider’s recommended write permissions instead of applying a blanket, world-writable setting.
- After a repair, verify that
wp-contentand its upload directories are writable in the supported way.
When PHP cannot write directly, WordPress may ask for FTP credentials during an update. That prompt does not mean the database credentials are wrong; it indicates that WordPress is falling back to a file-transfer method because direct file writing is unavailable.
Free tools Windows power users keep installed
One-click scans. No signup required.
Verify the database credentials independently
If shell access is available, test the username and password against the database host supplied by the provider:
mysql -u db_user -p
Enter the password when prompted. A successful login confirms that the account can authenticate, but it does not prove that DB_NAME, DB_HOST or the selected database privileges are correct. From the MySQL prompt, select the intended database only if you are certain of its name; avoid destructive test queries on a live site.
Without shell access, use the hosting panel’s database-management tool to confirm that the user is attached to the intended database, then let WordPress perform a controlled read operation by loading the dashboard or a non-cached page.
Run a controlled end-to-end test
- Back up the database and WordPress files using the host’s supported method.
- Open the site and log in to the WordPress dashboard.
- Upload a small test image and remove it, confirming that the media directory is writable.
- Use a staging site or a maintenance window to perform a minor plugin or core update. Observe whether WordPress writes directly or requests transfer credentials.
- Check the site, dashboard and error logs after the operation. Restore the backup if the test reveals an ownership or configuration problem.
- Delete any temporary test files and close the transfer session.
Do not test by changing production themes, deleting database tables or granting unrestricted database administration. The goal is to verify authentication, path scope, data access and file writes with reversible actions.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Rank #4
- Your Personal Streaming Server - Build your own Netflix-style media library and stream 4K movies, shows and photos to any device without monthly fees
- Create Your Own Cloud - Store your entire photo, video and music collection; access from anywhere with fast 282 MB/s transfer speeds
- Creator-Grade Backup Solution - Protect your irreplaceable content with automated backups to cloud services, external drives and remote NAS
- Multi-Layered Data Protection - Combine RAID redundancy, automated backups and snapshot technology to prevent data loss from any cause
- Smart Home Surveillance - Support up to 30 IP cameras with AI detection, instant alerts and secure remote monitoring
Troubleshoot the most common failures
“Error establishing a database connection”
Compare the four constants in wp-config.php with the complete values shown in the hosting panel. Check prefixes, spelling, capitalization, special characters and the provider’s exact DB_HOST. Confirm that the database user is attached to that database and that its password was not changed without updating the file. If the values match and shell authentication still fails, ask the host whether the database service is running or whether remote connections are restricted.
WordPress keeps asking for FTP credentials
Inspect file ownership and write permissions first. The PHP process may not own the files, or the host may intentionally require a transfer method for updates. Choose the SFTP or FTP-over-SSL method supported by the provider and use the dedicated account scoped to the WordPress directory. Do not paste the database username into this prompt; it accepts file-transfer credentials.
The transfer login opens the wrong folder
Edit the account’s directory scope in the panel and point it to the directory containing wp-admin, wp-content and wp-includes. If the panel automatically prepends a home path, retain that prefix. Reconnect after saving because many clients cache the previous starting directory.
The host offers no FTP account option
FTP may be disabled by the provider. Use SFTP if offered, or the host’s File Manager for individual changes. Ask support for the approved secure transfer workflow rather than enabling a service or opening a port yourself.
Uploads work but updates fail
Different directories can have different owners or permissions. Compare the ownership of the WordPress root, wp-content, plugin directories and upload directories with the host’s PHP ownership model. Correct the mismatch through the panel or support channel, then repeat the reversible update test.
Operate the accounts safely after setup
- Use a separate, directory-scoped transfer account for the site instead of sharing the hosting control-panel login.
- Prefer SFTP or another encrypted transfer mode. Treat SSH/SFTP credentials as highly privileged because they can modify or remove site files and settings.
- Store passwords in a password manager and never place them in support tickets, screenshots, public repositories or shared documents.
- Protect
wp-config.php; it contains the database connection values used by WordPress. - Rotate the transfer and database passwords independently. After changing a database password in the panel, update
DB_PASSWORDimmediately and test the site before closing the maintenance window. - Remove temporary users, temporary privileges and test files when a migration or repair ends.
- Review the account’s directory scope whenever the site moves from one document root to another.
Compare hosting environments before choosing one
| Capability | Why it matters for WordPress | Questions to ask the provider |
|---|---|---|
| SFTP availability | Provides encrypted transfer and avoids sending passwords in plain text. | Is SSH-based SFTP included, and can it be restricted to the site directory? |
| Scoped FTP accounts | Limits a credential’s reach if it is exposed. | Can each domain or installation have its own home directory? |
| Database-user controls | Lets you attach a user to one database and avoid unnecessary administration rights. | Can privileges be selected individually, and are prefixes clearly displayed? |
| Document-root clarity | Prevents accounts from opening above or below the actual WordPress files. | Where is the path shown for each domain and subdomain? |
| File Manager fallback | Provides a recovery route when FTP is disabled or a client is unavailable. | Can you safely edit, upload and restore files from the panel? |
| PHP ownership model | Determines whether WordPress can update files directly. | Which account or group owns PHP-created files, and what permission scheme does support recommend? |
Frequently asked questions
Can one FTP account serve several WordPress sites?
It can, but a separate account per site is safer. Separate scopes limit the damage from a leaked password and make it clear which credential should be disabled during an incident.
Best Value
- Secure private cloud - Enjoy 100% data ownership and multi-platform access from anywhere
- Easy sharing and syncing - Safely access and share files and media from anywhere, and keep clients, colleagues and collaborators on the same page
- Automated Backup Protection - Set-and-forget backups for Macs, PCs and mobile devices to multiple destinations including cloud and external drives
- Home Security System - Record and monitor your property 24/7 with support for multiple IP cameras and remote viewing
- 2-Year Warranty - Reliable hardware backed by Synology's expert customer support team and ongoing software updates
Should I put database credentials in an FTP client?
No. An FTP or SFTP client needs the transfer account and host connection settings. Database values belong in wp-config.php or the database tool provided by the host.
What should I do before changing a database password?
Take a current backup, change the password in the hosting panel, update DB_PASSWORD in wp-config.php, and immediately load the site and dashboard. If either fails, restore the previous value while you investigate the mismatch.
Quick wins for a faster PC:
Clear out junk files and repair common Windows errorsFree Scan →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Repair Windows errors before they cause bigger problemsFix Now →Is an SFTP login safe to give to a contractor?
Give access only when necessary, scope it to the required directory, use a unique password, and revoke it when the work ends. Remember that SFTP may allow broad file and settings changes even when the account is directory-scoped.
Why does a database login test succeed while WordPress still fails?
The command tests authentication only. WordPress can still fail if its database name or host differs, if the user is not attached to that database, or if the four values in wp-config.php contain a prefix or character error.
Frequently Asked Questions
Can one FTP account serve several WordPress sites?
It can, but a separate account per site is safer. Separate scopes limit the damage from a leaked password and make it clear which credential should be disabled during an incident.
Should I put database credentials in an FTP client?
No. An FTP or SFTP client needs the transfer account and host connection settings. Database values belong in wp-config.php or the database tool provided by the host.
What should I do before changing a database password?
Take a current backup, change the password in the hosting panel, update DB_PASSWORD in wp-config.php, and immediately load the site and dashboard. If either fails, restore the previous value while you investigate the mismatch.
Is an SFTP login safe to give to a contractor?
Give access only when necessary, scope it to the required directory, use a unique password, and revoke it when the work ends. Remember that SFTP may allow broad file and settings changes even when the account is directory-scoped.
Why does a database login test succeed while WordPress still fails?
The command tests authentication only. WordPress can still fail if its database name or host differs, if the user is not attached to that database, or if the four values in wp-config.php contain a prefix or character error.
Quick Recap
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.




