2 changed files with 0 additions and 154 deletions
@ -1,87 +0,0 @@ |
|||
// 检查并释放被占用的端口
|
|||
const { exec } = require('child_process'); |
|||
const os = require('os'); |
|||
|
|||
// 要检查的端口
|
|||
const PORT = 3001; |
|||
|
|||
function killProcessOnPort(port) { |
|||
console.log(`开始检查端口 ${port} 的占用情况...`); |
|||
|
|||
if (os.platform() === 'win32') { |
|||
// Windows系统
|
|||
exec(`netstat -ano | findstr :${port}`, (error, stdout) => { |
|||
if (error) { |
|||
console.log(`端口 ${port} 未被占用`); |
|||
return; |
|||
} |
|||
|
|||
const lines = stdout.trim().split('\n'); |
|||
if (lines.length > 0) { |
|||
// 提取PID
|
|||
const pid = lines[0].trim().split(/\s+/).pop(); |
|||
console.log(`发现进程 ${pid} 占用端口 ${port}`); |
|||
|
|||
// 杀死进程
|
|||
exec(`taskkill /F /PID ${pid}`, (killError) => { |
|||
if (killError) { |
|||
console.error(`杀死进程 ${pid} 失败:`, killError.message); |
|||
} else { |
|||
console.log(`成功杀死进程 ${pid},端口 ${port} 已释放`); |
|||
} |
|||
}); |
|||
} else { |
|||
console.log(`端口 ${port} 未被占用`); |
|||
} |
|||
}); |
|||
} else { |
|||
// Linux/Mac系统
|
|||
exec(`lsof -i :${port}`, (error, stdout) => { |
|||
if (error) { |
|||
console.log(`端口 ${port} 未被占用`); |
|||
return; |
|||
} |
|||
|
|||
const lines = stdout.trim().split('\n'); |
|||
if (lines.length > 1) { |
|||
// 提取PID
|
|||
const pid = lines[1].trim().split(/\s+/)[1]; |
|||
console.log(`发现进程 ${pid} 占用端口 ${port}`); |
|||
|
|||
// 杀死进程
|
|||
exec(`kill -9 ${pid}`, (killError) => { |
|||
if (killError) { |
|||
console.error(`杀死进程 ${pid} 失败:`, killError.message); |
|||
} else { |
|||
console.log(`成功杀死进程 ${pid},端口 ${port} 已释放`); |
|||
} |
|||
}); |
|||
} else { |
|||
console.log(`端口 ${port} 未被占用`); |
|||
} |
|||
}); |
|||
} |
|||
} |
|||
|
|||
// 执行端口检查和释放
|
|||
killProcessOnPort(PORT); |
|||
|
|||
// 延迟2秒后再次启动服务器(如果是Windows系统)
|
|||
setTimeout(() => { |
|||
if (os.platform() === 'win32') { |
|||
console.log('\n正在尝试重新启动服务器...'); |
|||
const serverProcess = exec('node server-mysql.js'); |
|||
|
|||
serverProcess.stdout.on('data', (data) => { |
|||
console.log(`服务器输出: ${data}`); |
|||
}); |
|||
|
|||
serverProcess.stderr.on('data', (data) => { |
|||
console.error(`服务器错误: ${data}`); |
|||
}); |
|||
|
|||
serverProcess.on('close', (code) => { |
|||
console.log(`服务器进程退出,代码: ${code}`); |
|||
}); |
|||
} |
|||
}, 2000); |
|||
@ -1,67 +0,0 @@ |
|||
require('dotenv').config(); |
|||
const mysql = require('mysql2/promise'); |
|||
|
|||
// 查询用户信息
|
|||
async function listUsers() { |
|||
let connection = null; |
|||
try { |
|||
console.log('连接数据库...'); |
|||
connection = await mysql.createConnection({ |
|||
host: process.env.DB_HOST || 'localhost', |
|||
user: process.env.DB_USER || 'root', |
|||
password: process.env.DB_PASSWORD === undefined ? null : process.env.DB_PASSWORD, |
|||
database: process.env.DB_DATABASE || 'wechat_app', |
|||
port: process.env.DB_PORT || 3306, |
|||
timezone: '+08:00' // 设置时区为UTC+8
|
|||
}); |
|||
console.log('数据库连接成功\n'); |
|||
|
|||
// 查询users表结构
|
|||
console.log('=== users表结构 ==='); |
|||
const [columns] = await connection.execute( |
|||
'SHOW COLUMNS FROM users' |
|||
); |
|||
console.log('字段列表:', columns.map(col => col.Field).join(', ')); |
|||
console.log(); |
|||
|
|||
// 查询前5个用户数据
|
|||
console.log('=== 用户数据 (前5个) ==='); |
|||
const [users] = await connection.execute( |
|||
'SELECT * FROM users LIMIT 5' |
|||
); |
|||
console.log(`数据库中有 ${users.length} 个用户记录`); |
|||
|
|||
if (users.length > 0) { |
|||
users.forEach((user, index) => { |
|||
console.log(`${index + 1}. 用户数据:`, user); |
|||
}); |
|||
|
|||
// 查找可能的openid字段
|
|||
const firstUser = users[0]; |
|||
const possibleOpenIdFields = Object.keys(firstUser).filter(key => |
|||
key.toLowerCase().includes('openid') || key.toLowerCase().includes('open_id') |
|||
); |
|||
|
|||
if (possibleOpenIdFields.length > 0) { |
|||
console.log('\n=== 可能的openid字段 ==='); |
|||
console.log('找到以下可能的openid字段:', possibleOpenIdFields.join(', ')); |
|||
console.log('请使用其中一个有效的字段更新测试脚本'); |
|||
} else { |
|||
console.log('\n未找到明显的openid字段,请检查users表结构后手动更新测试脚本'); |
|||
} |
|||
} else { |
|||
console.log('\n数据库中没有用户记录'); |
|||
} |
|||
|
|||
} catch (error) { |
|||
console.error('查询过程中发生错误:', error); |
|||
} finally { |
|||
if (connection) { |
|||
await connection.end(); |
|||
console.log('\n数据库连接已关闭'); |
|||
} |
|||
} |
|||
} |
|||
|
|||
// 运行查询
|
|||
listUsers(); |
|||
Loading…
Reference in new issue