所以我决定写一个脚本来安装Sams,安装主应用程序的第一部分是写的,但是连接到数据库MySQL时出现了问题,在安装说明中有以下代码:
1. mysql -u root -p (need pass MySQL)
2. GRANT ALL ON squidctrl.* TO sams@localhost IDENTIFIED BY "yourpassword";
3. GRANT ALL ON squidlog.* TO sams@localhost IDENTIFIED BY "yourpassword"; (yourpassword – any wish pass)
既然用户已经帮助我解释了为什么一旦我完成了脚本,谁能派上用场。你知道吗
#connect to the database mysql
user=raw_input('Mysql username -> ')
password=raw_input('Mysql password -> ')
db=MySQLdb.Connect(host="localhost", user=user, passwd=password)
cursor=db.cursor()
pass_sams=raw_input("chose password for sams user -> ")
cursor.execute('GRANT ALL ON squidctrl.* TO sams@localhost IDENTIFIED BY "%s";' % pass_sams)
cursor.execute('GRANT ALL ON squidlog.* TO sams@localhost IDENTIFIED BY "%s";' % pass_sams)
cursor.close()
感谢所有帮助解决这个问题的人
如果您要从Python访问MySQL,那么不应该通过
os.system
进行访问。你知道吗实际上,您不应该用
os.system
调用子流程,subprocess
模块就是为这个目的设计的。(然后您将能够与您的子流程进行通信)。你知道吗实际上,您应该使用^{} 模块(您应该能够使用apt通过
python-mysqldb
包安装它)。以下是您的使用方法:现在,您可能需要考虑使用可选的OurSQL,或者甚至使用ORM,例如SQL Alchemy。你知道吗
也许你想看看这个:http://docs.sqlalchemy.org/en/latest/dialects/mysql.html
Sqlalchemy是一个ORM,它简化了很多数据库的工作,而且在将来 如果您想从MySQL改为PostgreSQL引擎,这非常简单,而且不需要重写任何代码。你知道吗
读一下this link here
网上有很多网站可以帮助你学习这个图书馆。另外,this是项目的官方存储库。调用系统命令是没有意义的,当你有一个很好的界面,很好的文档,可以帮助你做任何事情pythonwise
相关问题 更多 >
编程相关推荐