feat: 环境配置纳入版本管理并更新文档
- 将 .env 和 .env.local 纳入版本管理 - 更新 .gitignore,移除对环境文件的忽略 - 在 README.md 中添加详细的数据库配置和启动说明 - 同步 server/.env 与项目根目录配置 - 修复后端数据库连接问题
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
_ "github.com/lib/pq"
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// 连接数据库
|
||||
db, err := sql.Open("postgres", "postgres://freedak:@localhost:5432/govai_portal?sslmode=disable")
|
||||
if err != nil {
|
||||
log.Fatal("连接数据库失败:", err)
|
||||
}
|
||||
defer db.Close()
|
||||
|
||||
// 生成密码哈希
|
||||
password := "admin123"
|
||||
hash, err := bcrypt.GenerateFromPassword([]byte(password), bcrypt.DefaultCost)
|
||||
if err != nil {
|
||||
log.Fatal("生成密码哈希失败:", err)
|
||||
}
|
||||
|
||||
// 更新密码
|
||||
result, err := db.Exec(`
|
||||
UPDATE users
|
||||
SET password_hash = $1, updated_at = NOW()
|
||||
WHERE email = $2
|
||||
`, string(hash), "admin@govai.gov.cn")
|
||||
|
||||
if err != nil {
|
||||
log.Fatal("更新密码失败:", err)
|
||||
}
|
||||
|
||||
rows, _ := result.RowsAffected()
|
||||
fmt.Printf("✅ 已重置 admin@govai.gov.cn 的密码为: %s (影响%d行)\n", password, rows)
|
||||
|
||||
// 验证
|
||||
var email, role string
|
||||
err = db.QueryRow("SELECT email, role FROM users WHERE email = $1", "admin@govai.gov.cn").Scan(&email, &role)
|
||||
if err != nil {
|
||||
log.Fatal("查询用户失败:", err)
|
||||
}
|
||||
fmt.Printf("用户: %s, 角色: %s\n", email, role)
|
||||
}
|
||||
Executable
BIN
Binary file not shown.
Reference in New Issue
Block a user