2010-12-01 9 views
1

私はいくつかの同様の問題を読んだことがありますが、問題は解決していないようです。私は、パイロンアプリケーションを実行してSQLAlchemyを使用して2つのデータベースに接続しています。 configファイルで設定されたプライマリは問題なく完全に動作します。私はそうのようなモデルで定義されたクラスを初期化することにより、第2のデータベースに接続しようとしている:sqlalchemy mysqlサーバーがなくなった

class DB2(object): 

    def __init__(self): 
    self.engine = sa.create_engine('mysql://someaddress:3306/database', echo=False, pool_recycle=1800) 
    self.meta = sa.MetaData(self.engine) 

    <define tables> 

    <define mappings> 

    Session = orm.sessionmaker(bind=self.engine, autoflush=False, autocommit=False) 
    self.session = Session() 

私は(私の作業データベースと一致した時点で)そこpool_recycleを定義することは、これを防止するのに十分だろうと思いましたしかし、そうではありません。誰もがソリューションをお勧めできますか?ありがとう。

答えて

2

私は最近同じ問題を抱えていましたが、SELECTの後であっても常にトランザクションを終了するようにして解決しました。 DB2.session.commit()を追加するだけで、サイクリング接続が開始されます。

関連する問題