DBSession_longvideo.py 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. from sqlalchemy import create_engine ,Integer,String,Column
  2. from sqlalchemy.orm import sessionmaker
  3. from sqlalchemy.ext.declarative import declarative_base
  4. from contextlib import contextmanager
  5. # HOST = 'rm-bp1k5853td1r25g3n690.mysql.rds.aliyuncs.com'
  6. HOST = 'rr-bp1x9785e8h5452bi157.mysql.rds.aliyuncs.com'
  7. PORT = '3306'
  8. DATABASE = 'longvideo'
  9. USERNAME = 'devops'
  10. PASSWORD = 'devops@123456'
  11. MYSQL_URI = "mysql+pymysql://{username}:{password}@{host}:{port}/{db}?charset=utf8".format(username=USERNAME,
  12. password=PASSWORD,
  13. host=HOST, port=PORT,
  14. db=DATABASE)
  15. Base = declarative_base()
  16. engine = create_engine(MYSQL_URI)
  17. session_factory = sessionmaker(bind=engine)
  18. @contextmanager
  19. def session_maker_longvideo(session=None):
  20. try:
  21. if session is None:
  22. session = session_factory()
  23. yield session
  24. except:
  25. session.rollback()
  26. raise
  27. else:
  28. session.commit()
  29. finally:
  30. session.close()