PostgreSQL
Line 3: | Line 3: | ||
When using this module for storing CDRs, also read [call.cdr] section in [[Register|Register]]. | When using this module for storing CDRs, also read [call.cdr] section in [[Register|Register]]. | ||
+ | |||
+ | ===Check if module is loaded=== | ||
+ | |||
+ | '''Note:''' Check if module PostGreSql is loaded. It is required to be loaded so that Yate can connect to database. | ||
+ | |||
+ | When Yate starts you can see a list of modules that are loaded. If PostGreSQL does not appear, you must install the devel packages, then reload Yate. | ||
+ | |||
+ | ./run -vvvvv -CDo | ||
+ | .......... | ||
+ | Loaded module PostgreSQL | ||
+ | ....... | ||
+ | |||
+ | Another way to check if module is loaded is from telnet, use command '''status''' check if pgsqldb is in the list: | ||
+ | |||
+ | %%+status | ||
+ | ............... | ||
+ | name=pgsqldb,type=database,format=Total|Failed|Errors|AvgExecTime;conns=0,failed=0 | ||
+ | ............ | ||
+ | %%-status | ||
===Configuration=== | ===Configuration=== | ||
Line 67: | Line 86: | ||
The name between [] will be used in other configuration files to set the used account.<br> | The name between [] will be used in other configuration files to set the used account.<br> | ||
Example: in register.conf you will have in the [default] section : account=yateadmin | Example: in register.conf you will have in the [default] section : account=yateadmin | ||
+ | |||
+ | |||
+ | '''See also''' | ||
+ | |||
+ | * [[MySQL]] |
Revision as of 17:05, 19 March 2013
This module is used to make the connection between Yate and a PostgreSQL database.
When using this module for storing CDRs, also read [call.cdr] section in Register.
Check if module is loaded
Note: Check if module PostGreSql is loaded. It is required to be loaded so that Yate can connect to database.
When Yate starts you can see a list of modules that are loaded. If PostGreSQL does not appear, you must install the devel packages, then reload Yate.
./run -vvvvv -CDo .......... Loaded module PostgreSQL .......
Another way to check if module is loaded is from telnet, use command status check if pgsqldb is in the list:
%%+status ............... name=pgsqldb,type=database,format=Total|Failed|Errors|AvgExecTime;conns=0,failed=0 ............ %%-status
Configuration
pgsqldb.conf
[general] ; This section is special - holds settings common to all connections ; priority: int: Handler priority ;priority=100 ; Each other section in this file describes a database connection ;[default] ; The section name is used as the database connection name ; autostart: bool: Automatically initiate the connection on startup ;autostart=yes ; timeout: int: Query timeout in milliseconds ;timeout=10000 ; retry: int: How many times to retry the connection or query ;retry=5 ; encoding: string: Character set encoding used to communicate with the server ; If not set will match the encoding of server side database ;encoding= ; connection: string: Ready-built client connection string for PQconnectStart ; If this is not set the string is built from the following pieces ; Take care if you set this - it will override anything that follows ;connection= ; host: string: PostgreSQL server to connect to ;host=localhost ; port: int: Port on which the server is listening for connections ;port=5432 ; database: string: Name of the database to use in queries ;database=yate ; user: string: Username to use to access the database ;user=postgres ; password: string: Password to authenticate the user to the database server ;password=
Example
Example of configuration pgsqldb.conf:
[yateadmin] host=localhost database=yateadmin user=postgres password=yate_admin
This is where a new connection is made.
You can have multiple connections to different databases.
The name between [] will be used in other configuration files to set the used account.
Example: in register.conf you will have in the [default] section : account=yateadmin
See also