初始化
This commit is contained in:
56
server/scripts/reset_password.go
Normal file
56
server/scripts/reset_password.go
Normal file
@@ -0,0 +1,56 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log"
|
||||
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
"golang.org/x/crypto/bcrypt"
|
||||
)
|
||||
|
||||
func main() {
|
||||
// MySQL连接信息
|
||||
username := "root"
|
||||
password := "root"
|
||||
hostname := "127.0.0.1"
|
||||
port := "3306"
|
||||
dbname := "nl_blog"
|
||||
|
||||
// 构建DSN
|
||||
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s", username, password, hostname, port, dbname)
|
||||
|
||||
// 连接到数据库
|
||||
db, err := sql.Open("mysql", dsn)
|
||||
if err != nil {
|
||||
log.Fatalf("Failed to open database connection: %v", err)
|
||||
}
|
||||
defer db.Close()
|
||||
|
||||
if err := db.Ping(); err != nil {
|
||||
log.Fatalf("Failed to ping database: %v", err)
|
||||
}
|
||||
|
||||
targetUser := "lq"
|
||||
newPassword := "qiqi991012"
|
||||
|
||||
// 生成哈希密码
|
||||
hashedPassword, err := bcrypt.GenerateFromPassword([]byte(newPassword), bcrypt.DefaultCost)
|
||||
if err != nil {
|
||||
log.Fatalf("Failed to hash password: %v", err)
|
||||
}
|
||||
|
||||
// 更新密码
|
||||
query := "UPDATE users SET password_hash = ? WHERE username = ?"
|
||||
res, err := db.Exec(query, string(hashedPassword), targetUser)
|
||||
if err != nil {
|
||||
log.Fatalf("Failed to update password: %v", err)
|
||||
}
|
||||
|
||||
rowsAffected, _ := res.RowsAffected()
|
||||
if rowsAffected == 0 {
|
||||
fmt.Printf("User '%s' not found or password not changed.\n", targetUser)
|
||||
} else {
|
||||
fmt.Printf("Password for user '%s' updated successfully.\n", targetUser)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user