amh命令行调用think migrate:run红色报错?

新手上路,请多包涵

网站程序目录下执行
/usr/local/php-8.0/bin/php think migrate:run

报错
[InvalidArgumentException]
There was a problem connecting to the database: SQLSTATE[HY000] [2002] No such file or directory

百度大概意思是找不到mysql安装目录,用的amh安装的mysql5.6
需要怎么配置

阅读 1.9k
2 个回答

这个和你的MySQL 的连接配置有关,检查一下

return [
    // 数据库类型
    'type'            => 'mysql',
    // 服务器地址
    'hostname'        => '127.0.0.1',
    // 数据库名
    'database'        => 'your_database_name',
    // 用户名
    'username'        => 'your_username',
    // 密码
    'password'        => 'your_password',
    // 端口
    'hostport'        => '3306',
    // 连接dsn
    'dsn'             => '',
    // 数据库连接参数
    'params'          => [],
    // 数据库编码默认采用utf8
    'charset'         => 'utf8',
    // 数据库表前缀
    'prefix'          => '',
    // 数据库调试模式
    'debug'           => true,
    // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
    'deploy'          => 0,
    // 数据库读写是否分离 主从式有效
    'rw_separate'     => false,
    // 读写分离后 主服务器数量
    'master_num'      => 1,
    // 指定从服务器序号
    'slave_no'        => '',
    // 自动读取主库数据
    'read_master'     => false,
    // 是否严格检查字段是否存在
    'fields_strict'   => true,
    // 数据集返回类型
    'resultset_type'  => 'array',
    // 自动写入时间戳字段
    'auto_timestamp'  => false,
    // 时间字段取出后的默认时间格式
    'datetime_format' => 'Y-m-d H:i:s',
    // 是否需要进行SQL性能分析
    'sql_explain'     => false,
];

亲,这个是连接不上mysql,如果是使用sock连接的mysql,你可以在面板『环境列表』勾选上命令行选项,直接使用php think migrate:run命令。
如果是用ip与端口连接的mysql,要在mysql参数配置开启端口监听,默认amh的mysql是没监听端口(考虑安全)

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题