首頁 > 軟體

Pycharm遠端偵錯和MySQL資料庫授權問題

2022-03-18 19:00:23

一、pycharm設定

1、部署設定

工具==》部署==》設定

2、python直譯器

檔案==》設定==》專案:xx==》python直譯器

3、執行/偵錯設定

執行==》編輯設定==》新增python設定

注:此處特別要注意如果要在pycharm中偵錯django需要將形參設定成:runserver 0:8000

此處“0:8000”表示django專案將以0.0.0.0:8000啟動,這樣方可在本地偵錯遠端程式碼。

二、mysql資料庫授權問題

1、settings.py

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'computers',
        'USER': 'root',
        'PASSWORD': '123',
        'HOST': '192.168.28.128',
        'PORT': '3306'
    }
}

注意:此處HOST在遠端直接執行時可使用“localhost”,但在pycharm偵錯遠端的時候需要改成遠端伺服器的ip,否則會出現如下錯誤:

django.db.utils.OperationalError: (1698, "Access denied for user 'root'@'localhost'")

2、mysql遠端資料庫授權

(1)修改my.cnf檔案(ubuntu下的地址為:/etc/mysql/mysql.conf.d/mysqld.cnf)

有則修改無則新增:

bind-address=0.0.0.0

(2)重啟mysqld服務:

systemctl restart mysqld

(3)連結mysql

mysql -u root -p

(4)使用資料庫mysql

use mysql;

(5)設定許可權

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;1

引數解釋:

  • “.” ---- 所有資源所有許可權
  • “‘root’@%” — root 代表使用者名稱 % 代表所有的存取地址(也可以使用一個唯一的地址進行替換,只有一個地址能夠存取)。
  • IDENTIFIED BY ‘root’,這個root是指存取密碼。
  • WITH GRANT OPTION允許級聯授權

(6)刷新系統許可權相關表資料 很重要

flush privileges;

(7)檢視是否新增成功

select Host, User from user;

(8)驗證遠端存取

遠端host地址:

mysql -u root -p -h

到此這篇關於Pycharm遠端偵錯和MySQL資料庫授權問題的文章就介紹到這了,更多相關Pycharm遠端偵錯內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com