Site icon IT Tutorial

Usefull Scripts For Couchbase Dba

Why Couchbase?

Today’s mission-critical applications demand support for millions of interactions with end-users. Traditional databases were built for thousands. Designed for consistency and control, they lack agility, flexibility, and scalability. To execute multiple use cases, organizations are forced to deploy multiple types of databases, resulting in a “database sprawl” – and inefficiency, sluggish time to market, and poor customer experience. Traditional transactional and analytical databases predate today’s cloud-everywhere reality. A cloud-native data management platform offers you a real competitive edge.

Enterprises are realizing that the requirements for extraordinary customer engagement can’t be met just at the app tier. Building a great looking and well-designed app is just a start. The underlying database is what makes the difference. An Engagement Database powers multiple interactions and experiences by liberating the full potential of data, at any scale, across any channel or device, in order to drive a more meaningful relationship.

Couchbase Server is an open source, distributed, NoSQL document-oriented engagement database. It exposes a fast key-value store with managed cache for sub-millisecond data operations, purpose-built indexers for fast queries and a powerful query engine for executing SQL-like queries. For mobile and Internet of Things environments Couchbase also runs natively on-device and manages synchronization to the server.

Couchbase Server is specialized to provide low-latency data management for large-scale interactive web, mobile, and IoT applications. Common requirements that Couchbase Server was designed to satisfy include:

  • Unified Programming Interface
  • Query
  • Search
  • Mobile and IoT
  • Analytics
  • Core database engine
  • Scale-out architecture
  • Memory-first architecture
  • Big data and SQL integrations
  • Full-stack security
  • Container and Cloud deployments
  • High Availability


Couchbase scripts for dbas

Couchbase is also faster in reading and writing than other open source databases.

Upgrade is zero downtime.

Doc for Couchbase


Video education for Couchbase


Enterprise and Comminity differences



export JAVA_HOME=/usr/java/jre1.8.0_241-amd64
export PATH=$PATH:$JAVA_HOME/bin
export CAUCHBASE_HOME=/opt/couchbase
export LD_LIBRARY_PATH=/opt/couchbase/lib
export CLASSPATH=$CLASSPATH:/opt/couchbase/lib/*
export PYTHONPATH=/opt/couchbase/lib/python
#Install cauchbase
rpm -ivh couchbase-server-community-6.0.0-centos7.x86_64.rpm

#Start couchbase
systemctl enable couchbase-server
systemctl start couchbase-server
systemctl status couchbase-server

couchbase-cli bucket-create --cluster= --user Administrator --password password --bucket travel-data --bucket-type couchbase --bucket-ramsize 100 --bucket-replica 1 --compression-mode active
mkdir -p /tmp/cbbackup/
cd /opt/couchbase/bin
cbbackup /tmp/cbbackup/ -u Administrator -p password


cbrestore /tmp/cbbackup -u Administrator -p password --bucket-source=travel-data --bucket-destination=travel-data
#Audit setting
couchbase-cli setting-audit -c --username Administrator \
--password password --audit-enabled 1 --audit-log-rotate-interval 604800 \
--audit-log-path /opt/couchbase/var/lib/couchbase/logs

#List cluster
couchbase-cli server-list -c --username Administrator \
--password password

#Couchbase terminal
cd /opt/couchbase/bin 
./cbq -u Administrator -p password -engine=

#Dba queries SELECT * FROM system:keyspaces; select active_requests.* from system:active_requests; select * from system:completed_requests; SELECT * FROM system:my_user_info; SELECT * FROM system:user_info; SELECT * FROM system:nodes; SELECT * FROM system:functions; SELECT * FROM system:functions_cache;

#Audit’s effect on performance

Audit is closed with all futures . Stress test :
1000000 row , 10 min, 1.2gb. Bucket has 2 replica. 20persec.

Audit is opened with all futures . Stress test :
1000000 row , 10 min, 1.2gb. Bucket has 2 replica. 20persec.  Audit file size = 256kb.

#Sample queries
SELECT callsign FROM `travel-sample` LIMIT 5;
SELECT * FROM `travel-sample` WHERE type="airport" LIMIT 1;
SELECT name FROM `travel-sample` WHERE type="hotel" AND city="Medway" and pets_ok=true LIMIT 10;
SELECT name,phone FROM `travel-sample` WHERE type="hotel" AND city="Manchester" and directions IS NOT MISSING ORDER BY name LIMIT 10;
#perf metric data
cbstats -j -u Administrator -p password -b travel-data all

#Rebalance status with http protocol as rest api
curl --silent -u Administrator:password | python -mjson.tool | grep -A1 -B4 rebalance
#Stats on web interface

#Data load for stress test

cbworkloadgen -n \
-n \
-u Administrator -p password \
-r .9 -i 1000000 -j \
-s 100 \
-b travel-data \
-t 10

#Cluster server list
couchbase-cli server-list -c --username Administrator --password password
curl -u Administrator:password -v -X GET | jq '.' | grep hostname

#Session time out set
curl -X POST -u Administrator:password \ \
-d "uiSessionTimeout=600"

cbstats -b travel-data -u Administrator -p password \ vbucket | grep 1014

Exit mobile version