Возникла очень специфическая ситуация, помогите советом.
Вот кусок кода, в котором осуществляется подключение к БД.
Специально, чтобы спрятать логин/пароль/название базы от вывода в случае ошибки был придуман способ с конфигурационным файлом (раньше эти данные прописывались прямо в строке коннекта)
И это работало!
### !!! MYSQL Connect f=open('/x/home/cfg/i5.mysql', 'r') mysql_cfg=f.read() f.close() host,user,passwd,db=mysql_cfg.strip().split('|') db = MySQLdb.connect(host=host, user=user, passwd=passwd, db=db, charset='cp1251') cursor = db.cursor()
Но сегодня произошла ошибка другого характера(отсутствие коннекта до сервера с БД) и пароль опять высветился в выводе ошибок!
Подскажите пожалуйста, как правильно передавать логин и пароль, чтобы избежать подобных ситуаций.
Спасибо.
p.s. Конечно же, правильнее всего направить вывод ошибок в файл (так и сделано), но во время отладки это крайне неудобно и в такие моменты вывод делается на экран.
UPD! Вопрос решился изменением методов выкатывания файлов на продакшн и введением дополнительного конфига с параметром отладка вкл/выкл. Но вместо абсолютных путей будет использоваться абсолютные “../cfg/mysql.cfg”, “../cfg/debug.cfg”