Skip to content

Releases: blubskye/yandere_sql_manager

v0.2.5 - PostgreSQL Fix & Profile Saving

16 Dec 02:10

Choose a tag to compare

What's New

PostgreSQL Encoding Fix

  • Fixed database creation using MySQL-specific utf8mb4 encoding for PostgreSQL
  • PostgreSQL databases now correctly use UTF8 encoding
  • Added automatic charset mapping between MySQL and PostgreSQL
  • Templates now adapt charset/collation based on database type

Connection Profile Saving

  • Added Ctrl+S to save current connection as a named profile
  • Profiles are stored in ~/.config/ysm/config.yaml
  • Saved profiles can be loaded with Ctrl+P
  • Profiles include: database type, host, port, user, password, and database

Installation

Linux/macOS

tar -xzf ysm-0.2.5-linux-amd64.tar.gz
cd ysm-0.2.5-linux-amd64
./install.sh

Windows

Extract the zip file and run ysm.exe from the extracted folder.


🤖 Generated with Claude Code

v0.2.4 - Performance Optimizations

15 Dec 08:55

Choose a tag to compare

Performance Optimizations using Go 1.21+ Features

High Impact

  • Per-row slice allocation fix - Reuse buffers across rows in export, eliminating N allocations for N rows
  • strconv over fmt.Sprintf - Replace reflection-based fmt.Sprintf("%d") with direct strconv.FormatInt(), strconv.Itoa(), strconv.FormatFloat() for all numeric types
  • Pre-allocated rowValues slice - Proper capacity allocation and reuse between rows

Medium Impact

  • sync.Pool for parallel export - Buffer pooling in parallel table export reduces GC pressure
  • Port number formatting - Optimized across all import/export operations
  • Environment variable handling - Simplified string concatenation instead of fmt.Sprintf

Low Impact

  • Context-aware batch execution - New executeBatchCtx() allows cancellation propagation in parallel imports
  • DatabaseExists() - Direct SQL query instead of listing all databases for existence checks
  • Go 1.21+ min() built-in - Cleaner worker limiting code
  • clear() for slice reset - More explicit intent than slice[:0]

Files Modified

  • internal/db/export.go
  • internal/db/import.go
  • internal/db/operations.go
  • internal/db/backup.go
  • internal/db/queries.go
  • internal/db/cluster.go
  • internal/logging/logging.go
  • internal/worker/pool.go

YSM v0.2.2 - PostgreSQL Native Format Support~ <3

15 Dec 01:15

Choose a tag to compare

What's New~ <3

PostgreSQL Native Format Support

YSM now fully supports PostgreSQL native dump formats for better performance and flexibility!

Export Formats

Format Flag Extension Description
Plain SQL --format=sql .sql Default, universal compatibility
Custom --format=custom .dump Compressed, fast restore
Tar --format=tar .tar Archive format
Directory --format=dir folder Best for parallel operations

Import Features

  • Auto-detection: .dump and .pgdump files automatically use pg_restore
  • Parallel restore: Use --jobs=N for faster imports on multi-core systems
  • Native tools: Force native tools with --native flag

Examples

# Export in custom format (compressed, fast restore)
ysm export mydb -o backup.dump --format=custom

# Import with parallel processing
ysm import backup.dump -d mydb --create --jobs=4

# Force native pg_dump for SQL export
ysm export mydb -o backup.sql --native

Benefits of Custom Format (.dump)

  • Built-in compression (smaller files)
  • Selective restore (specific tables/schemas)
  • Parallel restore with --jobs flag
  • Better error handling

Downloads

Platform File
Linux (amd64) ysm-0.2.2-linux-amd64.tar.gz
Linux (arm64) ysm-0.2.2-linux-arm64.tar.gz
macOS (Intel) ysm-0.2.2-darwin-amd64.tar.gz
macOS (Apple Silicon) ysm-0.2.2-darwin-arm64.tar.gz
Windows (64-bit) ysm-0.2.2-windows-amd64.zip

Your PostgreSQL databases are safe with YSM~ <3

YSM v0.2.1 - Customizable Keybindings~ <3

15 Dec 00:55

Choose a tag to compare

What's New~ <3

Customizable Keybindings

YSM now lets you customize ALL keybindings to your heart's content~ <3

  • Press ? in the TUI to open the keybindings settings
  • Navigate between views (global, databases, tables, etc.) with arrow keys
  • Press Enter on any action to rebind it
  • Press the new key you want to assign
  • Changes are saved automatically to ~/.config/ysm/keybindings.yaml
  • Press d to reset a single keybinding to default
  • Press r to reset ALL keybindings to defaults

Features

  • Per-view keybinding configuration
  • Help text dynamically updates to show your current bindings
  • Visual feedback when rebinding keys
  • Support for modifiers: ctrl+<key>, shift+<key>, alt+<key>

Downloads

Platform File
Linux (amd64) ysm-0.2.1-linux-amd64.tar.gz
Linux (arm64) ysm-0.2.1-linux-arm64.tar.gz
macOS (Intel) ysm-0.2.1-darwin-amd64.tar.gz
macOS (Apple Silicon) ysm-0.2.1-darwin-arm64.tar.gz
Windows (64-bit) ysm-0.2.1-windows-amd64.zip

Your databases are waiting for you... and YSM is ready to be customized just for you~ <3

YSM v0.2.0 - Major Feature Update~ <3

15 Dec 00:42

Choose a tag to compare

"I'll never let your databases go~"

New Features

PostgreSQL Support

  • Full PostgreSQL driver with streaming replication support
  • All features now work with both MariaDB and PostgreSQL

User Management

  • Create, drop, and manage database users
  • Grant and revoke privileges
  • View user permissions
  • Support for host-based access (MariaDB) and roles (PostgreSQL)

Backup & Restore

  • Create full database backups with compression (gzip, xz, zstd)
  • Restore from backup with progress tracking
  • Per-database backup scheduling
  • Backup retention policies
  • List and manage backup history

Database Setup Wizard

  • Quick setup for common applications (WordPress, Laravel, Drupal, Nextcloud)
  • Create database + user in one step
  • Configurable charset and collation
  • Template-based configuration

Statistics Dashboard

  • Real-time server statistics
  • Database and table sizes
  • Connection monitoring
  • Performance metrics (cache hit rate, slow queries)
  • Auto-refresh support

Cluster Management

  • MariaDB Galera Cluster support
  • MariaDB Master/Slave replication monitoring
  • PostgreSQL Streaming Replication support
  • Cluster health checks
  • Node status and lag monitoring

Debugging

  • -v/--verbose for info level logging
  • --debug for debug output with file:line
  • --trace for trace level output
  • --stack-trace for error stack traces
  • --log-file for file logging

Performance

  • Buffered I/O for large database operations (up to 32MB buffers)
  • Auto-scaling buffer sizes based on file size
  • Optimized transaction batching for imports

Installation

Linux/macOS

tar -xzf ysm-0.2.0-linux-amd64.tar.gz
cd ysm-0.2.0-linux-amd64
sudo ./install.sh

Windows

Extract the ZIP and run ysm.exe from the command line.

From Source

git clone https://github.com/blubskye/yandere_sql_manager.git
cd yandere_sql_manager
make build
sudo make install

TUI Key Bindings

Key Action
n New database (setup wizard)
d Statistics dashboard
c Cluster status
u User management
b Backup management
i Import SQL file
e Export database
s SQL query editor

Your databases are safe with YSM... forever~ <3

YSM v0.1.1 - System Variables Management

14 Dec 05:53

Choose a tag to compare

What's New

System Variables Management

  • CLI command ysm set for viewing/setting MariaDB system variables
  • TUI settings panel - Press v from databases view to open
  • Profile variables - Auto-apply settings when connecting with a profile
  • Import flags: --no-fk-checks, --no-unique-checks to disable checks during import
  • Export flag: --include-vars to include session variables in export

Profile Variable Commands

ysm profile set-var <profile> <variable> <value>
ysm profile unset-var <profile> <variable>
ysm profile vars <profile>

Example Usage

# Set a session variable
ysm set foreign_key_checks 0

# Show variables matching pattern
ysm set --show "character%"

# List common variables
ysm set --list

# Import with FK checks disabled
ysm import backup.sql -d mydb --no-fk-checks

# Export with session variables
ysm export mydb --include-vars

Downloads

  • Linux: ysm-linux-amd64
  • Windows: ysm-windows-amd64.exe

Full Changelog

v0.1.0...v0.1.1

YSM v0.1.0 - Initial Release

14 Dec 05:34

Choose a tag to compare

YSM (Yandere SQL Manager) v0.1.0

"I'll never let your databases go~"

A TUI and CLI tool for managing MariaDB databases.

Features

  • Interactive TUI for database management with a yandere-themed interface
  • Import/Export SQL files with compression support (gzip, xz, zstd)
  • Database browsing - view databases, tables, and data with pagination
  • Query editor with syntax highlighting and history
  • Connection profiles - save and manage multiple database connections
  • Database operations - clone, merge, copy, and diff databases
  • Buffered I/O for handling large database operations efficiently

Downloads

Platform Binary
Linux (amd64) ysm-linux-amd64
Windows (amd64) ysm-windows-amd64.exe

Installation

Linux

chmod +x ysm-linux-amd64
sudo mv ysm-linux-amd64 /usr/local/bin/ysm

Windows

Download ysm-windows-amd64.exe and add it to your PATH.

Usage

# Start interactive TUI
ysm

# CLI commands
ysm connect -H localhost -u root -p
ysm list databases
ysm export mydb -o backup.sql.zst
ysm import backup.sql -d mydb

License

GNU AGPL v3.0 - Source code available at https://github.com/blubskye/yandere_sql_manager