无法使用 sequelize-auto 连接到 SQL 服务器以生成模型

问题描述

我正在尝试使用 Sequelize-auto 在我的 NodeJs 应用程序中生成数据库模型。我正在使用乏味的包连接到 sql Server。

我正在运行以下命令:

sequelize-auto -h <hostIp> -d <dbname> --dialect mssql -o ./models -C --cm c --cp c -u <userName> -x <password>

但是,它给了我错误

ConnectionError [SequelizeConnectionError]: Failed to connect to <hostIp>:1433 - 3960:error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol:c:\ws\deps\openssl\openssl\ssl\statem\statem_lib.c:1947:
    at ConnectionManager.connect (C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\sequelize\lib\dialects\mssql\connection-manager.js:138:17)    at processticksAndRejections (internal/process/task_queues.js:93:5)
    at async ConnectionManager._connect (C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\sequelize\lib\dialects\abstract\connection-manager.js:318:24)
    at async C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\sequelize\lib\dialects\abstract\connection-manager.js:250:32
    at async ConnectionManager.getConnection (C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\sequelize\lib\dialects\abstract\connection-manager.js:280:7)
    at async C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\sequelize\lib\sequelize.js:613:26 {
  parent: ConnectionError: Failed to connect to <hostIp>:1433 - 3960:error:1425F102:SSL routines:ssl_choose_client_version:unsupported protocol:c:\ws\deps\openssl\openssl\ssl\statem\statem_lib.c:1947:
      at ConnectionError (C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\tedious\lib\errors.js:13:12)
      at Connection.socketError (C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\tedious\lib\connection.js:1658:56)
      at Socket.<anonymous> (C:\Users\kushal.garg\AppData\Roaming\npm\node_modules\tedious\lib\connection.js:1419:14)
      at Socket.emit (events.js:327:22)
      at emitErrorNT (internal/streams/destroy.js:106:8)
      at emitErrorCloseNT (internal/streams/destroy.js:74:3)
      at processticksAndRejections (internal/process/task_queues.js:80:21) {
    code: 'ESOCKET'
  }

我在使用 sequelize 直接连接到数据库时遇到了类似的问题。在阅读 Stackoverflow 上的其他答案后,我意识到它与 TLS 版本有关,并通过在命令行中设置 --tls-min-v1.0 标志来解决

但同样的事情在通过 sequelize-auto 生成模型时不起作用。 或者我可能在这里完全错了并且做错了其他事情。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)