OK, what you have is actually an invalid configuration.
When using the database hostname localhost
you are telling PHP to use a named pipe or socket to connect to the database. If you want to use a TCP/IP connection you need to set the hostname to 127.0.0.1
. This is something I've documented since 2007 and it's the way PHP has worked ever since it added MySQL support a very long time ago.
Since you have set dbhost
to localhost
BRS looks at the dbsocket
parameter for the path to the named pipe or socket. However, you have explicitly set it to an empty string which does not point to a valid path. At this point, BRS tries to figure out what you tried doing, so it tries to parse dbsocket
as the database port name, ignoring dbport
(dbport
is only read when dbhost
is NOT localhost). Being an empty string, when converted to an integer it becomes 0
which is indeed out of range.
You should instead use this configuration:
dbtype: mysqli
dbname: alvc_dv
dbhost: 127.0.0.1
dbport: 3306
That is, change dbhost
to 127.0.0.1 and remove dbsocket
altogether.
Moreover, 3306 is the default MySQL port, so you can further simplify your configuration by removing the explicit declaration of the implicit default:
dbtype: mysqli
dbname: alvc_dv
dbhost: 127.0.0.1
My approach is to only set configuration values when they deviate from the defaults. This way I can easily tell what I've set myself (it's explicitly configured) and what is an implied default.
Nicholas K. Dionysopoulos
Lead Developer and Director
🇬🇷Greek: native 🇬🇧English: excellent 🇫🇷French: basic • 🕐 My time zone is Europe / Athens
Please keep in mind my timezone and cultural differences when reading my replies. Thank you!