我正在使用laravel sail,我试图将sql文件导入mysql容器,有可能吗?我尝试了这个命令(file.sql在我启动sail命令的同一个目录中):sail exec mysql mysql -u username -p database_name < file.sql但我有这个错误“输入设备不是一个TTY”谢谢
sail exec mysql mysql -u username -p database_name < file.sql
vq8itlhq1#
您可以使用
sail mysql << file.sql
或
cat file.sql | sail mysql
如果你使用的是MariaDB,只需将mysql替换为mariadb即可。同样在defaultsail docker-compose.yml中,数据库的端口3306被暴露。这意味着,如果你已经安装了本地mysql客户端,你可以连接到localhost,但有一个扭曲:如果你使用mysql或mysqldump和-h localhost,它会尝试使用套接字,但如果你使用-h,你可以强制它使用3306127.0.0.1
# Does NOT work $ mysql -hlocalhost -usail -p laravel Enter password: ERROR 2002 (HY000): Can't connect to local server through socket '/run/mysqld/mysqld.sock' (2) # WORKS $ mysql -h127.0.0.1 -usail -p laravel Enter password:
欢呼
1条答案
按热度按时间vq8itlhq1#
您可以使用
或
如果你使用的是MariaDB,只需将mysql替换为mariadb即可。同样在defaultsail docker-compose.yml中,数据库的端口3306被暴露。
这意味着,如果你已经安装了本地mysql客户端,你可以连接到localhost,但有一个扭曲:如果你使用mysql或mysqldump和-h localhost,它会尝试使用套接字,但如果你使用-h,你可以强制它使用3306127.0.0.1
欢呼