mysql-gui
v1.2.13
Published
A GUI application for mysql, which helps developers in faster development
Downloads
1,111
Readme
MySQL GUI
MySQL GUI is a web-based Graphical User Interface designed to streamline database management and accelerate development workflows for MySQL, with planned future support for all major relational databases. This tool enhances user interaction with databases, allowing developers to manage data more efficiently.
Features
Connect to Local/Remote Databases
Easily connect to databases on your local machine or remote servers.CRUD Operations
Perform Create, Read, Update, and Delete actions on databases and tables.Multi-Tab Support
Work across multiple databases or queries simultaneously, with a smooth and responsive interface.Query Editor with Autocompletion
Write queries faster with intelligent autocompletion and syntax highlighting.Improved Pagination
Navigate large datasets with optimized pagination.Rich User Interface
A dynamic and user-friendly interface designed to enhance productivity.Dynamic Result Grid
Visualize query results with a responsive, grid-based layout.Basic Authentication
Optional authentication for added security when running on remote servers.Clipboard Copy
Quickly copy cell data with a single click.
Prerequisites
Node.js 16.0.0 or above
Install Node.js from the official downloads page. Alternatively, manage versions dynamically with tools like nvm on macOS, Linux, or WSL.npm 8.0.0 or above
npm is bundled with Node.js. To upgrade, use:npm i -g npm
MYSQL Server A running MySQL server instance
Installation
MYSQL GUI can be installed in multiple ways:
From npm
- Install globally:
npm install -g mysql-gui
- Run the application:
mysql-gui
From npm
- Clone the repository:
git clone https://github.com/kshashikumar/mysql-gui.git
- Navigate into the directory:
cd mysql-gui
- Install dependencies:
npm install
- Start the application:
npm run start
From Docker Hub
You can run MYSQL GUI using Docker for easy setup and deployment. Follow the steps below to get started:
Running with Docker Compose
To run MYSQL GUI with Docker Compose, use the following docker-compose.yml
file:
version: "3"
services:
mysql-gui:
container_name: "mysql-gui"
image: shashikumarkasturi/mysql-gui
restart: always
ports:
- "5000:5000"
environment:
- MYSQL_URL=mysql://root:[email protected]:3306
Steps to Run
- Create a
docker-compose.yml
file in your project directory and paste the configuration above. - Start the container using the following command:
docker-compose up -d
This command will start MYSQL GUI in detached mode, running in the background. 3. Once the container is running, open your browser and navigate to http://localhost:5000 to use MYSQL GUI. 4. To stop the container, run:
docker-compose down
Environment Variables
- MYSQL_URL: Replace mysql://root:[email protected]:3306 with the URL of your MySQL database if it's hosted elsewhere or has different credentials.
Usage
By default, MYSQL GUI launches with the following configuration:
- Database URL (-u):
mysql://root:root@localhost:3306
- Port (-p):
5000
The app will be accessible at http://localhost:5000
.
To connect to a different MySQL server, specify the database URL as follows:
mysql-gui -u mysql://<username>:<password>@<host>:<dbport>
Options
- -u: Specify the database URL to connect to a MySQL instance.
- -p: Port number for MYSQL GUI to listen on
Basic Authentication (Optional)
Protect data with basic authentication when running on remote servers.
- Create a
.env
file in the root directory. - Add the following variables
USERNAME=<your_username>
PASSWORD=<your_password>
- Restart the server.
To disable authentication, comment out or remove these variables from .env
and restart the server.
Upcoming Features
- Multi-Relational DB Support: PostgreSQL, MariaDB, SQLite3, Oracle, Amazon Redshift, and more.
- Backend Modularization: Improved architecture for easier maintenance and scaling.
- Dynamic Filtering: Filter data directly within result grids.
- Result Limit Options: Control the number of records displayed.
- AI Integration: Leverage AI capabilities for enhanced data analysis and insights.
Contributions
MYSQL GUI is open for contributions! If you have ideas for features, improvements, or bug fixes, feel free to submit a pull request or open an issue.
Demo
License
MYSQL GUI is distributed under the MIT License. This license permits commercial use, modification, distribution, and private use, with the requirement to include the original copyright and license notice.