如何连接python 3. app到在线mysql数据库

时间:2018-03-14 13:05:55

标签: python mysql

我在使用python 3.4连接在线实时mysql时遇到问题。我想使用mysql开发一个kivy移动应用程序,但我无法建立连接。任何人都可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

从安全角度来看,这是一个非常糟糕的主意。这会使您的数据库暴露于任何人的各种攻击。从理论上讲,他们必须猜测数据库的用户名和密码,但希望蛮力不是一件大事还不够。更不用说如果有人开始攻击你的负载量。我可以继续咀嚼这个话题好几天,所以如果你感兴趣的话,this是一个好的开始。

相反,你应该放弃这个计划,去寻找更安全的东西。有许多python Web框架可用于开发API并使用REST与数据库进行通信。 Tornado,Django,Flask,cherrypy,都是非常有效的选择。

缺点:

  • 您必须开发和维护第二个项目。
  • 每次推出更新时,您都必须确保它具有向后兼容性。

优点:

  • 可伸缩性选项(多服务器,复制,负载平衡)。
  • 能够无缝更改数据库引擎(鉴于迁移是正确的)。
  • 安全的防火墙规则。
  • 经过消毒和验证的用户输入。
  • 可以更好地保护用户数据。

直接从应用程序连接会暴露出太多风险。

答案 1 :(得分:0)

您可以使用任何可用的SQL客户端连接到您想要的数据库,例如:pymysql,sqlalchemy或peeewee。但是既然你要用kivy来做这件事,我会推荐peewee,因为它也快速轻巧。只需将名称,密码,用户和地址添加到数据库中,就像这样

from peewee import *
import peewee as pw
myDB = pw.MySQLDatabase("ahmedparxx_db", host="ahxxxy.com", port=3306, 
user="ahmxxx", passwd="050xxx")

由于这是一个orm,请阅读有关将各种表映射到您的类的文档

class Person(Model):
    name = CharField()
    number = IntegerField()

    class Meta:
        database = myDB

for person in Person.select():
    print(person.name, person.number)

上面的代码显示了如何检索信息..祝你好运