Complete installation and configuration guide for ShibuDB
Before installing ShibuDB, ensure your system meets the following requirements:
Choose the installation method that best fits your environment:
# Download and install
sudo installer -pkg shibudb-{version}-apple_silicon.pkg -target /
# Verify installation
shibudb --version
# Add ShibuDB tap
brew tap shibudb-org/shibudb
# Install ShibuDB
brew install shibudb
# Link if upgrading
brew link shibudb
# Download and install
wget https://github.com/Podcopic-Labs/ShibuDb/releases/download/v{version}/shibudb_{version}_amd64.deb
sudo dpkg -i shibudb_{version}_amd64.deb
# Download and install
wget https://github.com/Podcopic-Labs/ShibuDb/releases/download/v{version}/shibudb_{version}_arm64.deb
sudo dpkg -i shibudb_{version}_arm64.deb
# Download and install
wget https://github.com/Podcopic-Labs/ShibuDb/releases/download/v{version}/shibudb-{version}-1.x86_64.rpm
sudo rpm -i shibudb-{version}-1.x86_64.rpm
# Download and install
wget https://github.com/Podcopic-Labs/ShibuDb/releases/download/v{version}/shibudb-{version}-1.aarch64.rpm
sudo rpm -i shibudb-{version}-1.aarch64.rpm
ShibuDB automatically creates the required directory structure and can be configured for your needs:
ShibuDB automatically creates the following directory structure:
/usr/local/var/lib/shibudb/ # Database files
/usr/local/var/log/shibudb.log # Log file
/usr/local/var/run/shibudb.pid # PID file
By default, ShibuDB allows up to 1000 concurrent connections. You can modify this:
# Start with custom connection limit
sudo shibudb start 9090 2000
# Or update at runtime
shibudb manager 9090 limit 2000
Now let's start ShibuDB and verify it's working correctly:
# Start with default settings (port 9090, 1000 connections)
sudo shibudb start 9090
# Start with custom connection limit
# If server is started for first time, it will ask for new admin credentials
sudo shibudb start 9090 500
# Connect to the server
shibudb connect 9090
# You'll be prompted for credentials:
Username: {admin username}
Password: {admin password}
# Create a key-value space
CREATE-SPACE my_data --engine key-value
# Create a vector space for similarity search
CREATE-SPACE my_vectors --engine vector --dimension 128 --index-type Flat --metric L2
# Use the space
USE my_data
# Store and retrieve data
PUT user:1 "John Doe"
GET user:1
DELETE user:1
# Vector operations (in vector space)
USE my_vectors
INSERT-VECTOR 1 1.0,2.0,3.0,4.0
SEARCH-TOPK 1.1,2.1,3.1,4.1 5
RANGE-SEARCH 1.0,2.0,3.0,4.0 0.5
Verify that ShibuDB is running correctly:
# Check if server is running
ps aux | grep shibudb
# Check server logs
tail -f /usr/local/var/log/shibudb.log
# Test basic connectivity
telnet localhost 9090
# Test management API
curl http://localhost:10090/health
# Get connection statistics
curl http://localhost:10090/stats
# Get current connection limit
curl http://localhost:10090/limit
# Run unit tests
make test
# Run E2E tests (requires server running on port 4444 with admin credentials as admin:admin)
make e2e-test
After successful setup, explore these guides: