У меня проблемы с подключением к моей базе данных mysql из моего рабочего потока pyqt.
Я могу подключиться к БД вручную через командную строку, но мой рабочий поток pyqt5, похоже, не может открыть БД.У меня есть доступные драйверы QMYSQL, и я временно установил полные привилегии для всех пользователей, которые входят в систему, чтобы исключить этот сценарий, и я ввел имя пользователя и пароль по умолчанию, но все равно не могу подключиться.
В общих чертах, база данных MySQL находится в системе Ubuntu, и я подключаюсь с ПК с Windows 10.
Вот мой код и выходные данные.
class Worker(QThread):
def __init__(self):
super(Worker, self).__init__()
print('Opening DB')
self.db = QtSql.QSqlDatabase().addDatabase("QMYSQL")
print('Driver available? ', self.db.isDriverAvailable("QMYSQL"))
self.db.setHostName(192.168.56.1)
self.db.setDatabaseName('Automation_DB')
self.db.setUserName('root')
self.db.setPassword('root')
self.db.open()
self.query = QSqlQuery(self.db)
self.qstring = None
print('isopened? ',self.db.isOpen())
print('open? ',self.db.open())
print('Last Error ', self.db.lastError().text())
print('Drivers ', self.db.drivers())
try:
self.db.open()
print('Check open? ', self.db.open())
except Exception as e:
if not self.db.open():
print('DB open error', e)
else:
print('Error')
Вывод командной строки Ниже:
Opening DB
Driver available? True
isopened? False
open? False
Last Error Driver not loaded Driver not loaded
Drivers ['QSQLITE', 'QMYSQL', 'QMYSQL3', 'QODBC', 'QODBC3', 'QPSQL', 'QPSQL7']
Check open? False
Я просто хотел узнать, упускаю ли я что-то очевидное?Спасибо.