Skip to main content

Uninstalling QuikDB

The QuikDB CLI includes a comprehensive uninstall command that safely removes all QuikDB components from your system.

Quick Uninstall

quikdb uninstall

This will:

  1. Show you what will be removed
  2. Ask for confirmation
  3. Stop all running QuikDB processes
  4. Remove auto-start services
  5. Clean up configuration files
  6. Verify complete removal

Uninstall Options

See what would be removed without actually removing anything:

quikdb uninstall --dry-run

Skip Confirmation

For automated scripts or when you're sure:

quikdb uninstall --force

Preserve Your Data

Keep your registration data and configuration:

quikdb uninstall --keep-config

Keep log files for troubleshooting:

quikdb uninstall --keep-logs

Combine options:

quikdb uninstall --keep-config --keep-logs --force

What Gets Removed

Always Removed

  • Running Processes: All QuikDB processes (heartbeat, tunnel, welcome interface)
  • Auto-start Services:
    • macOS: LaunchAgent plist files
    • Linux: systemd user services
    • Windows: Scheduled tasks
  • Network Connections: Active tunnels and API connections

Conditionally Removed

  • Configuration Files: ~/.quikdb/ directory (unless --keep-config)
    • Registration data (device ID, tokens, user profile)
    • Network settings
    • Node configuration
  • Log Files: Application logs (unless --keep-logs)

Platform-Specific Items

  • macOS: ~/Library/LaunchAgents/com.quikdb.node.plist
  • Linux: ~/.config/systemd/user/quikdb-node.service
  • Windows: Task Scheduler entries

Verification

After uninstall, you can verify complete removal:

# Check for running processes
ps aux | grep quikdb

# Check for config directory
ls -la ~/.quikdb

# Check for auto-start service (macOS)
launchctl list | grep quikdb

# Check for auto-start service (Linux)
systemctl --user list-unit-files | grep quikdb

Reinstalling

After uninstall, you can reinstall QuikDB anytime:

curl -fsSL https://docs.quikdb.com/install/install.sh | bash

Troubleshooting

Uninstall Issues

If the uninstall command fails, try:

  1. Run with --dry-run first to identify issues
  2. Use --force to skip problematic confirmations
  3. Check if processes are running as different users

Manual Cleanup

If automatic uninstall fails or you need to completely remove QuikDB manually, follow the platform-specific instructions below.

Complete Manual Uninstall

Step 1: Stop All Running Processes

macOS/Linux:

# Find all QuikDB processes
ps aux | grep -i quikdb

# Kill all QuikDB processes (replace PIDs with actual ones shown above)
sudo kill -9 [PID1] [PID2] [PID3] ...

# Or use pkill to kill all at once
sudo pkill -f quikdb
sudo pkill -f QuikDB

Windows:

# Find all QuikDB processes
tasklist | findstr /i quikdb

# Kill all QuikDB processes
taskkill /f /im "quikdb.exe"
taskkill /f /im "QuikDB.exe"

# Or kill by process name pattern
wmic process where "name like '%quikdb%'" delete

Step 2: Remove Auto-Start Services

macOS:

# Stop and remove LaunchAgent
launchctl unload ~/Library/LaunchAgents/com.quikdb.node.plist 2>/dev/null
rm -f ~/Library/LaunchAgents/com.quikdb.node.plist

# Check for system-wide services (requires admin)
sudo launchctl unload /Library/LaunchDaemons/com.quikdb.node.plist 2>/dev/null
sudo rm -f /Library/LaunchDaemons/com.quikdb.node.plist

Linux:

# Stop and disable user service
systemctl --user stop quikdb-node.service 2>/dev/null
systemctl --user disable quikdb-node.service 2>/dev/null
rm -f ~/.config/systemd/user/quikdb-node.service

# Reload systemd
systemctl --user daemon-reload

# Check for system-wide services (requires admin)
sudo systemctl stop quikdb-node.service 2>/dev/null
sudo systemctl disable quikdb-node.service 2>/dev/null
sudo rm -f /etc/systemd/system/quikdb-node.service
sudo systemctl daemon-reload

Windows:

# Remove scheduled tasks
schtasks /delete /tn "quikdb-node" /f
schtasks /delete /tn "QuikDB-node" /f
schtasks /delete /tn "QuikDB" /f

# Remove Windows services (if any)
sc stop "QuikDB"
sc delete "QuikDB"

Step 3: Remove Binary Files

macOS/Linux:

# Common installation locations
sudo rm -f /usr/local/bin/quikdb
sudo rm -f /usr/bin/quikdb
rm -f ~/bin/quikdb
rm -f ~/.local/bin/quikdb

# Check if binary is in PATH and remove
which quikdb && sudo rm -f $(which quikdb)

# Remove from Homebrew (if installed via Homebrew)
brew uninstall quikdb 2>/dev/null || true

# Remove installation directory if exists
sudo rm -rf /opt/quikdb
sudo rm -rf /usr/local/quikdb

Windows:

# Remove from common locations
del "C:\Program Files\QuikDB\quikdb.exe"
del "C:\Program Files (x86)\QuikDB\quikdb.exe"
del "%LOCALAPPDATA%\QuikDB\quikdb.exe"
del "%USERPROFILE%\bin\quikdb.exe"
del "C:\Windows\System32\quikdb.exe"

# Remove from PATH if added there
where quikdb
:: (Note the location and delete manually)

# Remove installation directories
rmdir /s /q "C:\Program Files\QuikDB"
rmdir /s /q "C:\Program Files (x86)\QuikDB"
rmdir /s /q "%LOCALAPPDATA%\QuikDB"

Step 4: Remove Configuration and Data

All Platforms:

# Remove configuration directory
rm -rf ~/.quikdb

# Remove logs (various locations)
rm -rf ~/.local/share/quikdb
rm -rf ~/Library/Logs/QuikDB # macOS
rm -rf ~/.cache/quikdb # Linux

Windows (additional cleanup):

# Remove user data directories
rmdir /s /q "%USERPROFILE%\.quikdb"
rmdir /s /q "%APPDATA%\QuikDB"
rmdir /s /q "%LOCALAPPDATA%\QuikDB"

# Remove registry entries (optional - advanced users only)
reg delete "HKEY_CURRENT_USER\Software\QuikDB" /f
reg delete "HKEY_LOCAL_MACHINE\SOFTWARE\QuikDB" /f

Step 5: Clean Environment Variables

macOS/Linux:

# Remove from shell profile files
sed -i.backup '/quikdb/d' ~/.bashrc 2>/dev/null || true
sed -i.backup '/quikdb/d' ~/.zshrc 2>/dev/null || true
sed -i.backup '/quikdb/d' ~/.profile 2>/dev/null || true

# Remove environment variables
unset QUIKDB_HOME
unset QUIKDB_CONFIG

Windows:

# Remove user environment variables
setx QUIKDB_HOME ""
setx QUIKDB_CONFIG ""

# Or use GUI: System Properties > Environment Variables

Step 6: Verify Complete Removal

All Platforms:

# Verify no processes running
ps aux | grep -i quikdb # macOS/Linux
tasklist | findstr /i quikdb # Windows

# Verify binary removed
which quikdb # macOS/Linux
where quikdb # Windows

# Verify config directory removed
ls -la ~/.quikdb # Should show "No such file or directory"

# Verify services removed
launchctl list | grep quikdb # macOS
systemctl --user list-unit-files | grep quikdb # Linux
schtasks /query | findstr /i quikdb # Windows

Troubleshooting Manual Uninstall

Permission Denied Errors

If you get permission errors:

macOS/Linux:

# Use sudo for system locations
sudo rm -f /usr/local/bin/quikdb
sudo rm -f /usr/bin/quikdb

# For stubborn processes
sudo kill -9 $(ps aux | grep -i quikdb | awk '{print $2}')

Windows:

# Run Command Prompt as Administrator
# Right-click Command Prompt > "Run as administrator"

# For stubborn processes
taskkill /f /pid [PID]

Hidden or Running Processes

Find all QuikDB-related processes:

# macOS/Linux - comprehensive search
ps aux | grep -E "(quikdb|QuikDB)" | grep -v grep
lsof | grep -i quikdb
netstat -tulpn | grep -i quikdb

# Windows - comprehensive search
tasklist /v | findstr /i quikdb
netstat -ano | findstr /i quikdb

Locked Files

macOS/Linux:

# Find processes using QuikDB files
lsof | grep -i quikdb

# Kill processes holding files
sudo fuser -k ~/.quikdb/*

Windows:

# Restart in safe mode if files are locked
# Or use Process Explorer to find file handles

Emergency Uninstall Script

For quick automated removal, save this as emergency-uninstall.sh (macOS/Linux):

#!/bin/bash
echo "🚨 Emergency QuikDB Removal"
echo "Stopping all processes..."
sudo pkill -f quikdb 2>/dev/null

echo "Removing services..."
launchctl unload ~/Library/LaunchAgents/com.quikdb.node.plist 2>/dev/null
systemctl --user stop quikdb-node.service 2>/dev/null
systemctl --user disable quikdb-node.service 2>/dev/null

echo "Removing files..."
sudo rm -f /usr/local/bin/quikdb /usr/bin/quikdb
rm -rf ~/.quikdb ~/.local/share/quikdb

echo "Cleaning up..."
rm -f ~/Library/LaunchAgents/com.quikdb.node.plist
rm -f ~/.config/systemd/user/quikdb-node.service
systemctl --user daemon-reload 2>/dev/null

echo "✅ Emergency removal complete"

Make executable and run:

chmod +x emergency-uninstall.sh
./emergency-uninstall.sh

Preserving Data

Full Backup Before Uninstall

# Backup configuration
cp -r ~/.quikdb ~/.quikdb-backup

# Uninstall with preserved config
quikdb uninstall --keep-config

Restore Configuration

# After reinstalling, restore your config
cp -r ~/.quikdb-backup ~/.quikdb

Common Scenarios

Temporary Removal

If you need to temporarily remove QuikDB but plan to reinstall:

quikdb uninstall --keep-config

This preserves your registration data, so you won't need to re-register.

Complete Clean Slate

For a completely fresh start:

quikdb uninstall

This removes everything and you'll need to register again after reinstalling.

Debugging Installation Issues

To troubleshoot installation problems:

quikdb uninstall --keep-logs

This preserves log files that can help diagnose issues.


Data Loss Warning

Uninstalling QuikDB will disconnect your device from the network and stop all services. Your registration data will be lost unless you use --keep-config.

Need Help?

If you encounter issues during uninstall, check our support resources or report issues on our GitHub repository.