persistent-mysql-0.8.2: Backend for the persistent library using MySQL database server.

Safe HaskellSafe-Infered

Database.Persist.MySQL

Description

A MySQL backend for persistent.

Synopsis

Documentation

withMySQLPoolSource

Arguments

:: MonadIO m 
=> ConnectInfo

Connection information.

-> Int

Number of connections to be kept open in the pool.

-> (ConnectionPool -> m a)

Action to be executed that uses the connection pool.

-> m a 

Create a MySQL connection pool and run the given action. The pool is properly released after the action finishes using it. Note that you should not use the given ConnectionPool outside the action since it may be already been released.

withMySQLConnSource

Arguments

:: ResourceIO m 
=> ConnectInfo

Connection information.

-> (Connection -> m a)

Action to be executed that uses the connection.

-> m a 

Same as withMySQLPool, but instead of opening a pool of connections, only one connection is opened.

createMySQLPoolSource

Arguments

:: MonadIO m 
=> ConnectInfo

Connection information.

-> Int

Number of connections to be kept open in the pool.

-> m ConnectionPool 

Create a MySQL connection pool. Note that it's your responsability to properly close the connection pool when unneeded. Use withMySQLPool for automatic resource control.

data SSLInfo

Constructors

SSLInfo 

Fields

sslKey :: FilePath
 
sslCert :: FilePath
 
sslCA :: FilePath
 
sslCAPath :: FilePath
 
sslCiphers :: String

Comma-separated list of cipher names.

defaultConnectInfo :: ConnectInfo

Default information for setting up a connection.

Defaults are as follows:

  • Server on localhost
  • User root
  • No password
  • Database test
  • Character set utf8

Use as in the following example:

 connect defaultConnectInfo { connectHost = "db.example.com" }

defaultSSLInfo :: SSLInfo

Default (empty) information for setting up an SSL connection.

data MySQLConf Source

Information required to connect to a MySQL database using persistent's generic facilities. These values are the same that are given to withMySQLPool.

Constructors

MySQLConf 

Fields

myConnInfo :: ConnectInfo

The connection information.

myPoolSize :: Int

How many connections should be held on the connection pool.