作者 主題: 有關MariaDB無法使用其他使用者登入  (閱讀 1131 次)

0 會員 與 1 訪客 正在閱讀本文。

vamdorr

  • 可愛的小學生
  • *
  • 文章數: 7
    • 檢視個人資料
Hi 各位前輩,
小弟有兩個問題想請教前輩們。

(1)
小弟在Kali Linux 安裝了MariaDB。

透過MariaDB的root帳號去新增一個新的資料庫:
CREATE DATABASE database01;

透過MariaDB的root帳號去新增一個新的使用者帳號user01:
CREATE user 'user01'@'localhost' IDENTIFIED BY '*******';

再給予讀寫權限:
GRANT all PRIVILEGES ON database01.* TO 'user01'@'localhost';
再重新載入權限資料:
FLUSH PRIVILEGES;

最後想用該新使用者帳號在終端登入時:
# mysql -u user01 -p
Enter password: *******
出現錯誤訊息:
ERROR 1045 (28000): Access denied for user 'user01'@'localhost' (using password: YES)

我上網想要找解決這個問題的資訊,但是有用的並不多。
請問我可以怎麼解決這個本機使用者登入問題??

(2)
我想透過ubuntu主機上的python程式碼取得遠端的Kali Linux主機內的MariaDB內的資料(與第一個問題的Kali Linux是同一台)
Ubuntu主機 IP address: '***.***.11.76'
Kali主機 IP address: '***.***.11.80'

在ubuntu主機上執行的python script內容如下:
---------------------------------------------------------------------------------------------------------------------------------------------
import mysql.connector as mariadb
mariadb_connection = mariadb.connect(host = '***.***.11.80',
                                                               database = 'database01',
                                                               user = 'user01',
                                                               password = '*******')


---------------------------------------------------------------------------------------------------------------------------------------------
並且我已經事先將  'user01'@'localhost'  和  'user01'@'***.***.11.76'  新增至Kali Linux中MariaDB的使用者中並給其讀寫database01權限

但python最後給我的錯誤訊息:
mysql.connector.errors.ProgrammingError: 1045 (28000): Access denied for user 'user01'@'***.***.11.76' (using password: YES)


小弟被問題困擾了好一陣子惹~
上面的兩個問題我不知道怎麼解決,還麻煩強大的前輩們可以指導我,謝謝~ Orz


darkranger

  • 榮譽學長
  • 俺是博士!
  • *****
  • 文章數: 1352
    • 檢視個人資料
    • http://darkranger.no-ip.org
Re: 有關MariaDB無法使用其他使用者登入
« 回覆 #1 於: 2017-01-25 22:08 »
我在 Fedora 25、MariaDB 10.1 上無法重現你的問題
讓人不禁猜想是不是密碼打錯之類的....

vamdorr

  • 可愛的小學生
  • *
  • 文章數: 7
    • 檢視個人資料
Re: 有關MariaDB無法使用其他使用者登入
« 回覆 #2 於: 2017-01-26 10:56 »
前輩,感謝你的回覆
我兩個問題都解決了
抱歉,我在第二個問題真的犯蠢了,我python程式碼有兩個在密碼相鄰的數字交換位置。
檢查蠻久才發現...真的是密碼錯了

至於第一個問題我在登記使用者user01的時候用的是user01@'該主機的hostname':
CREATE user 'user01'@'該主機的hostname' IDENTIFIED BY '*******';
而不是user01@'localhost':
CREATE user 'user01'@'localhost' IDENTIFIED BY '*******';
我一直沒去檢查登記的user和host才這麼搞笑~Orz

感謝前輩花時間幫忙~謝謝~