MySQL 伺服器因缺少權限而無法啟動,但已給出

MySQL 伺服器因缺少權限而無法啟動,但已給出

我剛剛將舊的資料庫集複製到 /var/lib/mysql 並得到了一些奇怪的東西。首先,權限是“root:root”,因為我使用“sudo mc”從備份位置複製備份。我運行 chmod 和 chown 以適應舊權限,甚至與另一台電腦上的全新安裝相比,權限應該沒問題。但是,我仍然收到 mysqld 無法 chdir 到 /var/lib/mysql 的訊息

這裡是控制台輸出:

thopiekar@gate:~$ sudo systemctl status mysql
● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
   Active: activating (start-post) (Result: exit-code) since Di 2016-05-03 22:44:07 CEST; 15s ago
  Process: 9760 ExecStart=/usr/sbin/mysqld (code=exited, status=1/FAILURE)
  Process: 9754 ExecStartPre=/usr/share/mysql/mysql-systemd-start pre (code=exited, status=0/SUCCESS)
 Main PID: 9760 (code=exited, status=1/FAILURE);         : 9761 (mysql-systemd-s)
    Tasks: 2 (limit: 512)
   CGroup: /system.slice/mysql.service
           └─control
             ├─9761 /bin/bash /usr/share/mysql/mysql-systemd-start post
             └─9894 sleep 1

Mai 03 22:44:07 gate systemd[1]: Stopped MySQL Community Server.
Mai 03 22:44:07 gate systemd[1]: Starting MySQL Community Server...
Mai 03 22:44:08 gate mysqld[9760]: mysqld: Can't change dir to '/var/lib/mysql/' (Errcode: 13 - Permission denied)
Mai 03 22:44:08 gate mysqld[9760]: 2016-05-03T20:44:08.130902Z 0 [Warning] Changed limits: max_open_files: 1024 (requested 5000)
Mai 03 22:44:08 gate mysqld[9760]: 2016-05-03T20:44:08.131097Z 0 [Warning] Changed limits: table_open_cache: 431 (requested 2000)
Mai 03 22:44:08 gate mysqld[9760]: 2016-05-03T20:44:08.274970Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
Mai 03 22:44:08 gate mysqld[9760]: 2016-05-03T20:44:08.275222Z 0 [Warning] Can't create test file /var/lib/mysql/gate.lower-test
Mai 03 22:44:08 gate mysqld[9760]: 2016-05-03T20:44:08.275449Z 0 [Note] /usr/sbin/mysqld (mysqld 5.7.11-0ubuntu6) starting as process 9760 ...
Mai 03 22:44:08 gate mysqld[9760]: 2016-05-03T20:44:08.285371Z 0 [Warning] Can't create test file /var/lib/mysql/gate.lower-test
Mai 03 22:44:08 gate systemd[1]: mysql.service: Main process exited, code=exited, status=1/FAILURE
thopiekar@gate:~$ sudo ls -la /var/lib/mysql/
insgesamt 145460
drw-r-----  8 mysql mysql     4096 Mai  3 22:29 .
drwxr-xr-x 87 root  root      4096 Apr 30 00:05 ..
-rw-r-----  1 mysql mysql       56 Apr 30 00:06 auto.cnf
-rw-r-----  1 mysql mysql        0 Apr 30 00:06 debian-5.7.flag
-rw-r-----  1 mysql mysql      657 Mai  2 10:33 ib_buffer_pool
-rw-r-----  1 mysql mysql 35651584 Mai  2 10:33 ibdata1
-rw-r-----  1 mysql mysql 50331648 Mai  3 22:29 ib_logfile0
-rw-r-----  1 mysql mysql 50331648 Apr 29 15:08 ib_logfile1
-rw-r-----  1 mysql mysql 12582912 Mai  3 22:29 ibtmp1
drwxr-x---  2 mysql mysql     4096 Apr 30 00:06 mysql
drwxr-x---  2 mysql mysql     4096 Mai  2 09:46 MXYZ
drwxr-x---  2 mysql mysql     4096 Apr 30 00:06 performance_schema
drwxr-x---  2 mysql mysql    12288 Apr 30 00:06 sys
drwxr-x---  2 mysql mysql     4096 Apr 29 15:08 XY
drwxr-x---  2 mysql mysql     4096 Apr 29 15:08 XYZ

有人可以跟我解釋一下嗎?謝謝!

答案1

你說你“剛剛複製了我的舊資料庫集“ 這個單字 ”複製“ 在這種情況下可能意味著不正確的方法。當然你的”複製「可能涉及其他未公開的步驟。MySQL 的結構似乎是出口你的資料庫然後進口他們進入“新的“資料庫。不是實際複製。

你原來的MySQL設定還能用嗎?資料庫仍然存在並且可以存取嗎?

您的「新」系統上安裝了 MySQL 嗎?

你安裝了phpMyAdmin嗎?如果沒有看看如何使用mysql轉儲

如果 phpMyAdmin 可用,請使用 phpMyAdmin 匯出資料庫。之後將輸出複製到“的下載資料夾”新的“ 電腦系統。

論“新的" 電腦系統,再次使用 phpMyAdmin,但在這種情況下,從下載資料夾匯入資料庫。匯入資料庫應該可以解決您的權限問題。

有關如何匯出/匯入的其他更深入的指導,請在互聯網上搜尋“mysql 匯出資料庫」。

這是基於使用 mysqldump 的隨機選擇範例:“一次性匯出和匯入所有 MySQL 資料庫

相關內容