这件事情的起因是这样的,我在写vue项目时想用 Sequelize 通过端口号连接本地的 SQL Server,但是之前是通过架构访问本地存储进行CRUD的,本地的 SQL Server 默认不打开端口,经过我的探索和查阅资料,找到了解决方案。
首先,先看一下我的数据库连接配置:
const sequelize = new Sequelize('database_name', 'username', 'password', {
dialect: 'mssql',
host: 'localhost',
dialectOptions: {
driver: 'tedious',
},
logging: false,
define: {
timestamps: true,
underscored: true
},
pool: {
max: 10,
min: 0,
acquire: 30000,
idle: 10000
}
});
sequelize.authenticate()
.then(() => {
console.log('Sequelize 连接数据库成功!');
})
.catch(err => {
console.error('Sequelize 连接数据库失败:', err);
});
const Table = sequelize.define('Table', {
name: {
type: Sequelize.STRING
},
sex: {
type: Sequelize.STRING
},
age: {
type: Sequelize.STRING
},
});
Table.sync().then(() => {
console.log('创建 Tables 表成功!');
});
其中 Sequelize 无法连接到 SQL Server有以下几个原因,导致连接错误:
dialectOptions 选项将端口号设置为正确的端口号。可以通过 SQL Server Configuration Manager 工具来查看 SQL Server 的端口号。具体步骤如下:
你也可以通过修改 Windows 注册表来查看 SQL Server 的端口号。具体步骤如下:
在以上两种情况下,如果没有找到端口号,则可以认为是默认端口号 1433。但是,如果客户端与 SQL Server 不在同一台计算机上,则需要确保网络中没有阻塞 TCP 端口 1433。
1.首先找到你的配置管理器,如果你语言选的英文的话应该是 SQL Server Configuration Manager

2.找到你 SQL Server 网络配置 - MSSQLSERVER 的协议 - TCP/IP 协议 - 从”已禁用“状态改为”已启用“

3.通过以上步骤你就打开了SQL Server的 TCP/IP 连接,现在你就可以通过端口号(默认1433)访问了

4.同理,如果你不需要通过访问端口号的方式访问,你也可以根据上述步骤操作关闭SQL Server的 TCP/IP 连接从而达到阻止通过端口号访问的目的
到此这篇关于SQL Server开放(或关闭)端口连接的实现步骤的文章就介绍到这了,更多相关SQL开放关闭端口连接内容请搜索插件窝以前的文章或继续浏览下面的相关文章希望大家以后多多支持插件窝!