Add Z MySQL Deferred Database Connection

Id
Title
Enter a Database Connection String 1
Connect immediately

1 Connection Strings

The connection string used for Z MySQL Database Connection is of the form:

    [~] [*lock] [+/-][database][@host[:port]] [user [password [unix_socket]]]
or typically:
       database user password
to use a MySQL server on localhost via the standard UNIX socket. Only specify host if the server is on a remote system. You can use a non-standard port, if necessary. Hint: To use a non-standard port on the local system, use 127.0.0.1 for the host instead of localhost.

Either a database or a host or both must be specified.

If the UNIX socket is in a non-standard location, you can specify the full path to it after the password.

A '-' in front of the database tells ZMySQLDA to not use Zope's Transaction Manager, even if the server supports transactions. A '+' in front of the database tells ZMySQLDA that it must use transactions; an exception will be raised if they are not supported by the server. If neither '-' or '+' are present, then transactions will be enabled if the server supports them. If you are using non-transaction safe tables (TSTs) on a server that supports TSTs, use '-'. If you require transactions, use '+'. If you aren't sure, don't use either.

A '~' at the begining of the connection string enables client-server exchange compression (if supported by both client and server).

*lock means to psuedo-transactional. When the transaction begins, it will acquire a lock on the server named lock (i.e. MYLOCK). When the transaction commits, the lock will be released. If the transaction is aborted and restarted, which can happen due to a ConflictError, you'll get an error in the logs, and inconsistent data. In this respect, it's equivalent to transactions turned off.

Transactions are highly recommended. Using a named lock in conjunctions with transactions is probably pointless.