DbConfig
- Type
- Class
- Namespace
- craft\config
- Inherits
- craft\config\DbConfig » yii\base\BaseObject
- Implements
- yii\base\Configurable
- Since
- 3.0.0
DB config class
# Public Properties
Property | Description |
---|---|
attributes | array – An array of key => value pairs of PDO attributes to pass into the PDO constructor. |
charset | string – The charset to use when creating tables. |
database | string – The name of the database to select. |
driver | string – The database driver to use. |
dsn | string – The Data Source Name (“DSN”) that tells Craft how to connect to the database. |
password | string – The database password to connect with. |
port | integer – The database server port. |
schema | string – The schema that Postgres is configured to use by default (PostgreSQL only). |
server | string – The database server name or IP address. |
tablePrefix | string – If you’re sharing Craft installs in a single database (MySQL) or a single database and using a shared schema (PostgreSQL), you can set a table prefix here to avoid per-install table naming conflicts. |
unixSocket | string, null – MySQL only. |
url | string, null – The database connection URL, if one was provided by your hosting environment. |
user | string – The database username to connect with. |
# attributes
- Type
- array
- Default value
[]
An array of key => value pairs of PDO attributes to pass into the PDO constructor.
For example, when using the MySQL PDO driver, if you wanted to enable a SSL database connection
(assuming SSL is enabled in MySQL and 'user'
can connect via SSL,
you’d set these:
[
PDO::MYSQL_ATTR_SSL_KEY => '/path/to/my/client-key.pem',
PDO::MYSQL_ATTR_SSL_CERT => '/path/to/my/client-cert.pem',
PDO::MYSQL_ATTR_SSL_CA => '/path/to/my/ca-cert.pem',
],
# charset
- Type
- string
- Default value
'utf8'
The charset to use when creating tables.
# database
- Type
- string
- Default value
null
The name of the database to select.
# driver
- Type
- string
- Default value
null
The database driver to use. Either 'mysql' for MySQL or 'pgsql' for PostgreSQL.
# dsn
- Type
- string
- Default value
null
The Data Source Name (“DSN”) that tells Craft how to connect to the database.
DSNs should begin with a driver prefix (mysql:
or pgsql:
), followed by driver-specific parameters.
For example, mysql:host=127.0.0.1;port=3306;dbname=acme_corp
.
- MySQL parameters: https://php.net/manual/en/ref.pdo-mysql.connection.php
- PostgreSQL parameters: https://php.net/manual/en/ref.pdo-pgsql.connection.php
# password
- Type
- string
- Default value
''
The database password to connect with.
# port
- Type
- integer
- Default value
null
The database server port. Defaults to 3306 for MySQL and 5432 for PostgreSQL.
# schema
- Type
- string
- Default value
'public'
The schema that Postgres is configured to use by default (PostgreSQL only).
See also https://www.postgresql.org/docs/8.2/static/ddl-schemas.html
# server
- Type
- string
- Default value
null
The database server name or IP address. Usually localhost
or 127.0.0.1
.
# tablePrefix
- Type
- string
- Default value
''
If you’re sharing Craft installs in a single database (MySQL) or a single database and using a shared schema (PostgreSQL), you can set a table prefix here to avoid per-install table naming conflicts. This can be no more than 5 characters, and must be all lowercase.
# unixSocket
MySQL only. If this is set, the CLI connection string (used for yiic) will connect to the Unix socket instead of
the server and port. If this is specified, then server
and port
settings are ignored.
# url
The database connection URL, if one was provided by your hosting environment.
If this is set, the values for driver, user, database, server, port, and database will be extracted from it.
# user
- Type
- string
- Default value
'root'
The database username to connect with.
# Public Methods
Method | Description |
---|---|
__call() | Calls the named method which is not a class method. |
__construct() | Constructor. |
__get() | Returns the value of an object property. |
__isset() | Checks if a property is set, i.e. defined and not null. |
__set() | Sets value of an object property. |
__unset() | Sets an object property to null. |
canGetProperty() | Returns a value indicating whether a property can be read. |
canSetProperty() | Returns a value indicating whether a property can be set. |
className() | Returns the fully qualified name of this class. |
hasMethod() | Returns a value indicating whether a method is defined. |
hasProperty() | Returns a value indicating whether a property is defined. |
init() | Initializes the object. |
updateDsn() | Updates the DSN string based on the config setting values. |
# init()
Initializes the object.
This method is invoked at the end of the constructor after the object is initialized with the given configuration.
Throws
# updateDsn()
DEPRECATED
Deprecated in 3.4.0.
Updates the DSN string based on the config setting values.
Throws
- yii\base\InvalidConfigException
if driver isn’t set tomysql
orpgsql
.
# Constants
Constant | Description |
---|---|
DRIVER_MYSQL | |
DRIVER_PGSQL |
← Factory GeneralConfig →