How to reset trial Navicat Premium on Linux, Windows, MacOS

02 Aug 2024 - 4 min read
How to reset trial Navicat Premium on Linux, Windows, MacOS

Navicat is a popular database management tool used by developers, database administrators, and analysts to manage and interact with various types of databases. It supports multiple database systems and provides an intuitive interface for tasks such as querying, designing, and managing databases.

It’s important to remember that extending a software trial period without authorization is typically against the terms of service and can be considered unethical or illegal.

Please subscribe their plan if you can.

Table of Contents

Reset trial Navicat Premium on Linux

  • Create new .sh file:
Terminal
nano reset-trial-navicat.sh
  • Then paste this content into the terminal:
reset-trial-navicat.sh
#!/bin/bash
# Author: NakamuraOS <https://github.com/nakamuraos>
# Latest update: 06/24/2024
# Tested on Navicat 15.x, 16.x, 17.x on Debian, Ubuntu.
BGRED="\e[1;97;41m"
ENDCOLOR="\e[0m"
echo -e "${BGRED} ${ENDCOLOR}"
echo -e "${BGRED} ┌──────────────────────────────────────┐ ${ENDCOLOR}"
echo -e "${BGRED} │ !!! WARNING !!! │ ${ENDCOLOR}"
echo -e "${BGRED} ├──────────────────────────────────────┤ ${ENDCOLOR}"
echo -e "${BGRED} │ ALL DATA can be destroyed. │ ${ENDCOLOR}"
echo -e "${BGRED} │ Always BACKUP before continuing. │ ${ENDCOLOR}"
echo -e "${BGRED} └──────────────────────────────────────┘ ${ENDCOLOR}"
echo -e "${BGRED} ${ENDCOLOR}"
echo -e "Report issues:\n> https://gist.github.com/nakamuraos/717eb99b5e145ed11cd754ad3714b302\n"
echo -e "Reset trial \e[1mNavicat Premium\e[0m:"
read -p "Are you sure? (y/N) " -r
echo
if [[ $REPLY =~ ^[Yy]([eE][sS])?$ ]]
then
echo "Starting reset..."
DATE=$(date '+%Y%m%d_%H%M%S')
# Backup
echo "=> Creating a backup..."
cp ~/.config/dconf/user ~/.config/dconf/user.$DATE.bk
echo "The user dconf backup was created at $HOME/.config/dconf/user.$DATE.bk"
cp ~/.config/navicat/Premium/preferences.json ~/.config/navicat/Premium/preferences.json.$DATE.bk
echo "The Navicat preferences backup was created at $HOME/.config/navicat/Premium/preferences.json.$DATE.bk"
# Clear data in dconf
echo "=> Resetting..."
dconf reset -f /com/premiumsoft/navicat-premium/
echo "The user dconf data was reset"
# Remove data fields in config file
sed -i -E 's/,?"([A-F0-9]+)":\{([^\}]+)},?//g' ~/.config/navicat/Premium/preferences.json
echo "The Navicat preferences was reset"
# Done
echo "Done."
else
echo "Aborted."
fi

For more information, visit my gists at: https://gist.github.com/nakamuraos/717eb99b5e145ed11cd754ad3714b302

  • Add execute permission to the file:
Terminal
chmod +x ./reset-trial-navicat.sh
  • You can easy reset trial Navicat Premium using this command:
Terminal
./reset-trial-navicat.sh

Reset trial Navicat Premium on Windows

  • Create new .bat file: Desktop > Right click > New file > reset-trial-navicat.bat

  • Copy this content into the file:

reset-trial-navicat.bat
@echo off
echo Delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Update
reg delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Update /f
echo.
echo Delete HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium\Registration[version and language]
for /f %%i in ('"REG QUERY "HKEY_CURRENT_USER\Software\PremiumSoft\NavicatPremium" /s | findstr /L Registration"') do (
reg delete %%i /va /f
)
echo.
echo Delete Info and ShellFolder under HKEY_CURRENT_USER\Software\Classes\CLSID
for /f "tokens=*" %%a in ('reg query "HKEY_CURRENT_USER\Software\Classes\CLSID"') do (
for /f "tokens=*" %%l in ('reg query "%%a" /f "Info" /s /e ^| findstr /i "Info"') do (
reg delete %%a /f
)
for /f "tokens=*" %%l in ('reg query "%%a" /f "ShellFolder" /s /e ^| findstr /i "ShellFolder"') do (
reg delete %%a /f
)
)
echo.
echo Finish
pause
  • You can easy reset trial Navicat Premium using this .bat file: Right click on the file > Run as Administrator

Reset trial Navicat Premium on MacOS

  • Create new .sh file:
Terminal
nano reset-trial-navicat.sh
  • Then paste this content into the terminal:
reset-trial-navicat.sh
#!/bin/bash
set -e
file=$(defaults read /Applications/Navicat\ Premium.app/Contents/Info.plist)
regex="CFBundleShortVersionString = \"([^\.]+)"
[[ $file =~ $regex ]]
version=${BASH_REMATCH[1]}
echo "Detected Navicat Premium version $version"
case $version in
"17"|"16")
file=~/Library/Preferences/com.navicat.NavicatPremium.plist
;;
"15")
file=~/Library/Preferences/com.prect.NavicatPremium15.plist
;;
*)
echo "Version '$version' not handled"
exit 1
;;
esac
echo "Reseting trial time..."
regex="([0-9A-Z]{32}) = "
[[ $(defaults read $file) =~ $regex ]]
hash=${BASH_REMATCH[1]}
if [ ! -z $hash ]; then
echo "deleting $hash array..."
defaults delete $file $hash
fi
regex="\.([0-9A-Z]{32})"
[[ $(ls -a ~/Library/Application\ Support/PremiumSoft\ CyberTech/Navicat\ CC/Navicat\ Premium/ | grep '^\.') =~ $regex ]]
hash2=${BASH_REMATCH[1]}
if [ ! -z $hash2 ]; then
echo "deleting $hash2 folder..."
rm ~/Library/Application\ Support/PremiumSoft\ CyberTech/Navicat\ CC/Navicat\ Premium/.$hash2
fi
echo "Done"
  • Add execute permission to the file:
Terminal
chmod +x ./reset-trial-navicat.sh
  • You can easy reset trial Navicat Premium using this command:
Terminal
./reset-trial-navicat.sh

Conclusion

While there are many tempting ways to reset Navicat’s trial period, it’s crucial to adhere to ethical practices and use the software legally. Navicat offers an array of official channels and alternatives to explore their software, ensuring that you can find a solution that fits your needs without resorting to unauthorized means.

ThinhHV

About ThinhHV

DevOps • Fullstack Developer • Amateur Photographer