Releases: blubskye/yandere_sql_manager
v0.2.5 - PostgreSQL Fix & Profile Saving
What's New
PostgreSQL Encoding Fix
- Fixed database creation using MySQL-specific
utf8mb4encoding for PostgreSQL - PostgreSQL databases now correctly use
UTF8encoding - Added automatic charset mapping between MySQL and PostgreSQL
- Templates now adapt charset/collation based on database type
Connection Profile Saving
- Added
Ctrl+Sto 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.shWindows
Extract the zip file and run ysm.exe from the extracted folder.
🤖 Generated with Claude Code
v0.2.4 - Performance Optimizations
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 directstrconv.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.gointernal/db/import.gointernal/db/operations.gointernal/db/backup.gointernal/db/queries.gointernal/db/cluster.gointernal/logging/logging.gointernal/worker/pool.go
YSM v0.2.2 - PostgreSQL Native Format Support~ <3
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:
.dumpand.pgdumpfiles automatically usepg_restore - Parallel restore: Use
--jobs=Nfor faster imports on multi-core systems - Native tools: Force native tools with
--nativeflag
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 --nativeBenefits of Custom Format (.dump)
- Built-in compression (smaller files)
- Selective restore (specific tables/schemas)
- Parallel restore with
--jobsflag - 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
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
"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/--verbosefor info level logging--debugfor debug output with file:line--tracefor trace level output--stack-tracefor error stack traces--log-filefor 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.shWindows
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 installTUI 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
What's New
System Variables Management
- CLI command
ysm setfor viewing/setting MariaDB system variables - TUI settings panel - Press
vfrom databases view to open - Profile variables - Auto-apply settings when connecting with a profile
- Import flags:
--no-fk-checks,--no-unique-checksto disable checks during import - Export flag:
--include-varsto 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-varsDownloads
- Linux:
ysm-linux-amd64 - Windows:
ysm-windows-amd64.exe
Full Changelog
YSM v0.1.0 - Initial Release
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/ysmWindows
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 mydbLicense
GNU AGPL v3.0 - Source code available at https://github.com/blubskye/yandere_sql_manager