Vor kurzem haben wir damit begonnen, unser verwaltetes WordPress auf Synology NAS umzustellen,Importieren Sie dieses Stück in die Datenbank,Wie erwartet gab es eine Menge Probleme,Es hat viel Zeit gekostet, sie zu studieren und nacheinander zu lösen,Dokumentieren Sie den Prozess,Teilen Sie es mit denen, die es brauchen。
【環境】
- MariaDB von Synology、phpMyAdmin wurde erstellt。
- Die .sql Datei wurde von der Hosting-Website heruntergeladen,Die Größe beträgt ca. 250MB。
- DBeaver ist auf Ihrem lokalen Computer installiert,Das lokale Produktionssystem ist Manjaro。
【Wichtige Schritte】
- SSH kann zu MariaDB hinzugefügt werden von Nicht-localhost Verbundene Konten。Dies liegt daran, dass die Standardeinstellungen für Konten so sind, dass sie nur über localhost (d. h. das NAS selbst) eine Verbindung herstellen können.。
- Erhöhen Sie das max_allowed_packet-Limit für MariaDB。Standardmäßig gibt es nur 1M。
- Installieren Sie maria-clients lokal,Damit DBeaver die Direktiven verwenden kann, die zum Wiederherstellen der Datenbank erforderlich sind。
Neues MariaDB-Konto
# 透過 SSH 連線 Synology NAS ssh myaccount@192.168.1.1 # myaccount 為 Synology 帳戶;192.168.1.1 為 Synology 位址 # 確認 bind-address 為 0.0.0.0 (預設值) more /volume1/@appstore/MariaDB10/usr/local/mariadb10/etc/mysql/my.cnf | grep bind-address # 確認 port 為 3306,且 Synology 上的防火牆有開啟對應的 port more /var/packages/MariaDB10/etc/my_port.cnf # 以 root 身份登入資料庫 /volume1/@appstore/MariaDB10/usr/local/mariadb10/bin/mysql --user=root --port=0 --password --host=localhost # 檢視資料庫現有的使用者 SELECT User, Host FROM mysql.user; # 記得最後要輸入分號 # 建立一個 dbeaver-restore 帳戶,密碼為 superstrongpassword,並允許其從 192.168.*.* 登入 CREATE USER 'dbeaver-restore'@'192.168.%' IDENTIFIED BY 'superstrongpassword'; # 給予 dbeaver-restore 存取所有資料庫的權限 GRANT ALL PRIVILEGES ON *.* TO 'dbeaver-restore'@'192.168.%' WITH GRANT OPTION; # 斷開資料庫連線 exit
Anpassen der MariaDB-Paketgrenzen
# 確認目前 [mysqld] 底下的 max_allowed_packet 的數值 more /volume1/@appstore/MariaDB10/usr/local/mariadb10/etc/mysql/my.cnf # Synology 建議不要修改預設的 my.cnf 檔案 # 而是使用下面路徑 my.cnf 檔來套用自訂值 sudo vim /var/packages/MariaDB10/etc/my.cnf # 在 vim 按 i 後,貼上下面文字 [mysqld] max_allowed_packet = 500M # 設成大於 sql 檔大小的數值 # 按 ESC 後,存檔離開 :wq! # 重啟 MariaDB 服務 sudo /usr/syno/bin/synopkg restart MariaDB10
Wiederherstellen einer SQL-Datenbank mit DBeaver
1. Da DBeaver die Datenbank über mariadb oder mysql wiederherstellen muss,Daher müssen Sie das Paket "mariadb-clients" oder "mysql-client" lokal installieren。
2. Bestätigen Sie den Speicherort von mysql mit dem Befehl which mysql,Standardmäßig befindet es sich in /usr/bin/mysql。
which mysql
3. Im DBeaver-Bildschirm, der die Datenbankverbindung einrichtet,Sie müssen zum lokalen Client gehen, um den Speicherort von mysql festzulegen。
Klicken Sie auf dem lokalen Client auf Durchsuchen。
4. Ein neuer Speicherort für MySQL wurde hinzugefügt。
◎ Gemäß der offiziellen Dokumentbeschreibung von DBeaver,Wenn sich der Speicherort von mysql in /usr/bin/mysql befindet,Dann wird dies auf /usr gesetzt.,Überspringen Sie das folgende /bin/mysql。
◎ Wenn DBeaver die Version ist, die aus der Snap-Kit-Bibliothek heruntergeladen wurde,Konvertieren Sie den Pfad in /run/…,Dies führt dazu, dass nachfolgende Ausführungen fehlschlagen。Wenn ja, dann ist dies der Fall,Installieren Sie stattdessen DBeaver aus der offiziellen Paketbibliothek。
5. Klicken Sie mit der rechten Maustaste auf die Zieldatenbank,Wählen Sie "Extras" - "Skript ausführen", um die Datenbank wiederherzustellen。
6. Wählen Sie die SQL-Quelldatei aus,Drücken Sie zum Wiederherstellen auf Start.。
《Referenzen》
- Gastgeber ” Es ist nicht erlaubt, sich mit dieser MariaDB zu verbinden | Synology-Gemeinschaft
- Erteilen Sie allen Berechtigungen EIN in MySQL, um Remote-Berechtigungen _grant Alle Berechtigungen ein zuzuweisen *.* zu-CSDN Blog
- Die privaten Gerichte von Brother Bird – KAPITEL IX、vim-Programm-Editor
- Ist es möglich, die MariaDB-Einstellungen auf dem Synology NAS anzupassen? – Synology Wissenszentrum
- DBeaver Dokumentation