Я создаю объект соединения с mysql.connector
в Python. Если я передаю параметры для хоста, пользователя, пароля и базы данных непосредственно в функцию, она работает нормально, но если я передаю информацию после извлечения ее из файла YAML, она выдает следующую ошибку: mysql.connector.errors.ProgrammingError: 1045 (28000): Access denied for user 'test'@'localhost' (using password: YES)
import mysql.connector
import yaml
config_data = yaml.load(open("config.yaml"), Loader=yaml.FullLoader)
def connection_1():
conn = mysql.connector.connect(
host="127.0.0.1",
user="test",
passwd="Orion@123",
database="socketTestDB"
)
c = conn.cursor()
return c, conn
def connection_2():
conn = mysql.connector.connect(
host=config_data["host"],
user=config_data["user"],
passwd=config_data["password"],
database=config_data["database"]
)
c = conn.cursor()
return c, conn
print(connection_1()) # THIS ONE WORKS FINE
print(connection_2()) # THIS ONE DOES NOT
Вот снимок экрана с содержимым файла YAML
Я напечатал содержимое объекта словаря, созданного из файла YAML, и это также хорошо работает но все равно не работает при создании соединения.