Mit der Freiheit und Open-Source-Natur von WordPress Content-Management-System ist die Übernahme der Online-Veröffentlichung von Inhalten einfach, flexibel und überschaubar.
Für WordPress-Datenbankadministratoren ist es wichtig, alle Datenbankbenutzerbeiträge und -interaktionen innerhalb solcher Plattformen im Griff zu haben. Es gibt mehrere Gründe, die einen Datenbankadministrator zwingen, Benutzer mit unterschiedlichen Rechten über den MySQL-Client oder die Shell zu erstellen.
Der erste Grund ist die Flexibilität und Unkompliziertheit einer MySQL-Client-Shell. Sie müssen sich nur an die erforderliche MySQL-Befehlssyntax halten, damit Ihre Datenbankabfragen erfolgreich ausgeführt werden. Der zweite Grund ist die Präferenz. Es ist relativ schneller, MySQL-Datenbankabfragen von einer MySQL-Client-Shell aus zu erstellen und auszuführen als von einer GUI-Schnittstelle wie phpMyAdmin .
Wenn Sie MariaDB verwenden , das MySQL Shell-Befehle sind seit MariaDB immer noch darauf anwendbar ist ein Open-Source-Fork des MySQL RDBMS.
WordPress MySQL-Datenbank und -Tabellen auflisten
Um einen beliebigen WordPress-Benutzer zu erstellen; normaler Benutzer oder Admin-Benutzer muss Ihre WordPress-Site über die MySQL-Client-Shell gemeinsam mit der Ziel-MySQL-Datenbank konfiguriert werden.
Greifen Sie dazu als Root-Benutzer auf die MySQL-Befehlsshell zu.
$ mysql -u root -p
Stellen Sie sicher, dass die mit Ihrer WordPress-Site verknüpfte Datenbank vorhanden ist, und wechseln Sie zu dieser Datenbank, da wir einen damit verknüpften WordPress-Administratorbenutzer erstellen werden.
MariaDB [(none)]> SHOW DATABASES; MariaDB [(none)]> USE wordpress;

WordPress wird standardmäßig mit MySQL geliefert Benutzertabelle namens wp_users . Diese Tabelle existiert automatisch unter dem Datenbanknamen, den Sie für Ihre WordPress-Site erstellt haben. Wir müssen uns mit den Spaltendetails dieser Tabelle vertraut machen, da sie uns beim Erstellen eines neuen WordPress-Admin-Benutzers helfen werden.
MariaDB [(none)]> Describe wp_users;

Ein WordPress-Administrator namens tutor@linuxshelltips ist bereits vorhanden. Wenn wir einen anderen Admin-Benutzer erstellen, sollten seine Anmeldeinformationen auf diesem wp_users angezeigt werden MySQL-Datenbanktabelle.
MariaDB [(none)]> SELECT * FROM wp_users;

Überprüfen der WordPress-MySQL-Datenbank-Verbindungseinstellungen
In einer zweiten Linux-Terminalumgebung müssen wir sicherstellen, dass Ihre WordPress-Site-Konfiguration WordPress erlaubt, sich sicher mit der MySQL-Datenbank zu verbinden. Der erforderliche Schritt hier ist, Ihre WordPress-Datenbankkonfigurationsdatei gegenzuprüfen und sicherzustellen, dass alles in Ordnung ist.
$ sudo nano /srv/www/wordpress/wp-config.php Or $ sudo vi /srv/www/wordpress/wp-config.php

Diese Datei wird verwendet, um wichtige WordPress-Konfigurationsdetails wie den Datenbanknamen (DB_NAME ), Datenbankbenutzer (DB_USER ), Datenbankpasswort (DB_PASSWORD ) und Datenbankhost (DB_HOST ).
Erstellen des neuen WordPress-Admin-Benutzers über MySQL
Sie müssen einen weiteren Benutzer hinzufügen (editorlinuxshelltips ) Zeileneintrag in die MySQL-Datenbanktabelle wp_users .
MariaDB [(none)]> INSERT INTO wordpress.wp_users (user_login,user_pass,user_nicename,user_email,user_url,user_registered,user_activation_key,user_status,display_name) VALUES ('editor@linuxshelltips',MD5('Id@editor254'),'editorlinuxshelltips','[email protected]','http://localhhost','2021-08-27','',0,'editor@linuxshelltips');
Listen Sie nach dem Hinzufügen eines neuen Benutzers die Datenbanktabelle wp_users auf erneut zur Bestätigung.
MariaDB [(none)]> SELECT * FROM wp_users;

Der neue Benutzer (editor@linuxshelltips ) wurde der WordPress-Datenbanktabelle hinzugefügt (wp_users ).
Starten Sie den MySQL-Dienst neu, um die Änderungen zu übernehmen.
$ sudo systemctl restart mysql
Melden Sie sich mit neuen Admin-Benutzerdaten bei WordPress an
Melden Sie sich mit den neuen Benutzerdaten bei Ihrer WordPress-Site an:

Wie Sie sehen können, kann der Benutzer nicht viel tun, außer einen Beitrag zu bearbeiten und zu löschen oder sich abzumelden.
Sorry, you are not allowed to access this page.

WordPress-Benutzern über MySQL Administratorrechte zuweisen
Um diesen Benutzer zuzuweisen (editor@linuxshelltips ) die erforderlichen Administratorrechte, notieren Sie sich zuerst die automatisch generierte ID (3) in der Tabelle wp_users . Eine weitere bereits vorhandene Tabelle in unserer WordPress-Datenbank ist wp_usermeta . Die Werte in dieser Tabelle sind dafür verantwortlich, einen normalen WordPress-Benutzer zu einem Admin-Benutzer zu machen.
Lassen Sie uns diese Werte als Referenz identifizieren.
MariaDB [(none)]> SELECT * FROM wp_usermeta;

Wir müssen diesen Benutzer zuweisen (editor@linuxshelltips ) dieselben wp_capabilities und wp_user_level Einträge als bereits vorhandener und privilegierter Admin-Benutzer tutor@linuxshelltips .
Implementieren Sie die folgenden MySQL-Befehle.
MariaDB [(none)]> INSERT INTO wordpress.wp_usermeta (`umeta_id`, `user_id`, `meta_key`, `meta_value`) VALUES (NULL, '3', 'wp_capabilities', 'a:1:{s:13:"administrator";b:1;}'), (NULL, '3', 'wp_user_level', '10'), (NULL, '3', 'show_welcome_panel', '1');
Listen Sie erneut die Tabelle wp_usermeta auf .
MariaDB [(none)]> SELECT * FROM wp_usermeta;

Beachten Sie die neuen Werte für editor@linuxshelltips aus dem Screenshot oben unter user_id 3 . Die user_id in diesem wp_usermeta Die Tabelle sollte der ID in wp_users entsprechen Tabelle.
Starten Sie den MySQL-Dienst erneut.
$ sudo systemctl restart mysql
Melden Sie sich ab und mit den neuen Benutzerdaten erneut bei Ihrer WordPress-Site an.

Der Benutzer, editor@linuxshelltips , kann jetzt mehr mit der WordPress-Site machen, als nur einen Beitrag zu bearbeiten oder zu löschen und sich abzumelden. Dieser Benutzer ist jetzt ein Superuser oder ein Admin-Benutzer.
Es ist jetzt möglich, dass Ihre WordPress-Site mehr als einen Admin-Benutzer hat, insbesondere wenn Sie zu viele Inhalte zu verwalten haben und der Datenverkehr auf Ihrer Site zu hoch ist ist aus den Charts.