sudo apt update
sudo apt install mysql-server
sudo service mysql start
sudo mysql_secure_installation
sudo mysql -u root
In mysql console:
DROP USER 'root'@'localhost';
CREATE USER 'root'@'%' IDENTIFIED BY 'YOURPASSWORD';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
# Installing MySQL
sudo apt update
sudo apt install mysql-server
# — Configuring MySQL
sudo mysql_secure_installation
|-----> # Creating a Dedicated MySQL User and Granting Privileges
| sudo mysql, mysql -u root -p,sudo mysql --defaults-file=/etc/mysql/debian.cnf
| CREATE USER 'user_name'@'localhost' IDENTIFIED BY 'password';
| # Change User Password
| ALTER USER 'user_name'@'localhost' IDENTIFIED BY 'newPassword';
| FLUSH PRIVILEGES;
| # IF ERROR 1819 (HY000): Your password does not satisfy
| # The current policy requirements (Source: ostechnix.com)
| SET GLOBAL validate_password.policy = 0;
| SET GLOBAL validate_password.length = 6; # If Required.
| SET GLOBAL validate_password.number_count = 0; # If Required.
| SHOW VARIABLES LIKE 'validate_password%'; # Show password level.
|
| # Granting privileges
| GRANT ALL PRIVILEGES ON * . * TO 'user'@'localhost';
| SHOW GRANTS FOR 'user'@'localhost';
| FLUSH PRIVILEGES;
|
| # Delete User
| DROP USER 'user'@'localhost';
| # Show All Users
| SELECT User, Host FROM mysql.user;
|
|-----> # Creating database
| create database db_name;
| # Show DataBase
| SHOW DATABASES;
| # Delete Database
| DROP DATABASE db_name;
|-----> # Creating table
| USE db_name;
| CREATE TABLE t_name (id int, name varchar(100));
| # Insert Data
| INSERT INTO t_name VALUES (1, 'AliRaza');
| # Delete Table
| DROP TABLE t_name;
| # Show All tabales in DB
| USE db_name;
| SHOW TABLES;
|
|-----> # Import Sql File
| mysql -u username -p db_name < file.sql
|
|-----> # Export Sql Database
| mysqldump -u username -p db_name > file.sql # Full DB
| mysqldump -u username -p db_name table_name > file.sql # Specific Table