There’s some info out there about connecting to MySQL via socket using something called junixsocket. All the instructions were pretty straight forward but I continued to get an error, something about socket length or some such thing.
Turns out we need a user with access via 127.0.0.1 so we can connect via port as opposed to socket.
MySQL 8 apparently no longer allows creating a user and granting privileges in a one-liner, so I did it in two.
I prefer issuing commands directly in MySQL as opposed to using the -e
command. so… mysql -u root
CREATE USER ‘root’@’127.0.0.1’ IDENTIFIED BY ‘root’;
GRANT ALL ON *.* TO ‘root’@’127.0.0.1’;
And for good measure:
FLUSH PRIVILEGES;
Now Local’s default user root, with default password ‘root’, can access MySQL using a port.
But Local doesn’t show a port for the site in the admin.
There’s some talk about finding the port in the address bar of Adminer, but for me that gave a different port that did not work in PhpStorm. Instead I got the port directly from MySQL:
- Right click the site in Local and click “Open Site Shell”.
mysql -u root
- Then issue the command
SHOW VARIABLES WHERE variable_name = 'port';
Now the MySQL Data Source can be added as it was in earlier versions of Local:
- Host: 127.0.0.1
- User: root
- Password: root
- Port: 10063 (from the example above)
- Database: local (optional)