You can also use "mysql_read_default_file" in the DSN to read a my.cnf file.
On Mon, Mar 11, 2019 at 5:05 PM <macpo...@raf.org> wrote: > MacPorts wrote: > > > On 3/11/19 1:34 AM, Andrew Udvare wrote: > > >> On 2019-03-11, at 00:10, MacPorts <macpo...@hyperbole-software.com> > wrote: > > >> > > >> I noticed that the socket in /var/mysql is called mysql.sock while > the one in /opt/local/var/run/mysql5 is called mysqld.sock (note the 'd' > between 'l' and '.'). > > >> > > >> I tried using > > >> $ sudo ln -s /var/mysql/mysql.sock > /opt/local/var/run/mysql5/mysqld.sock > > >> > > >> for some reason that also didn't work. > > >> > > >> Then I tried: > > >> $ sudo ln -s /var/mysql/mysql.sock > /opt/local/var/run/mysql5/mysql.sock > > >> $ sudo mv /opt/local/var/run/mysql5/mysql.sock > /opt/local/var/run/mysql5/mysqld.sock > > >> > > >> this worked. I don't know why this worked and making the link > directly didn't, but at least it's working now. > > >> > > > I ran into a similar issue a long time ago with PHP. PHP has an option > to control this setting at build time and it also has a runtime option in > php.ini. > > > > > > The DBI port should be doing the same. I don't think users should have > to add things outside of the prefix, unmanaged by port. > > > > > I thought creating a link from the socket file to where Perl expects to > > find it was working. It's not. > > > > What is working is to specify the path to the socket file with > > "mysql_socket=/var/mysql/mysql.sock" in the dsn when I make the > > connection, but, that makes the code specific to my machine, so I'd like > > to find a better solution. Still looking. > > > > Carl. > > how about putting the dsn in a config file for your application > or getting it from an environment variable rather than having > it inside the application's code? > > cheers, > raf > >