我正在将pymysql与Python 3.8配合使用,以允许Python与其他MySQL服务器建立连接。我收到一个错误:

with pymysql.connect('127.0.0.1', user = '123', password = '123', port = server.local_bind_port) as connection: 
AttributeError: __enter__ 
python :
    from sshtunnel import SSHTunnelForwarder 
    import pymysql 
     
     
    with SSHTunnelForwarder( 
        ('76.21.187.192', 2222), 
        ssh_username = '123',  
        ssh_password = '123', 
        remote_bind_address = ('127.0.0.1', 3306)) as server:  
     
        with pymysql.connect('127.0.0.1', user = '123', password = '123', port = server.local_bind_port) as connection: 
            print('OK') 
如何正确连接到MySQL?

请您参考如下方法:

当您在python中使用with块时,with语句中的对象获取其输入方法,调用with,内部运行该块,然后调用退出(如果引发了,则可选地带有异常信息)。因此,如果您没有在类中定义的输入,则会看到此错误。
否则,您可以使用:
连接= pymysql.connect('127.0.0.1',用户='123',密码='123',端口= server.local_bind_port)


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!