Linux 下 MySQL 数据库常用命令

对很多不熟悉 MySQL 的朋友来说,要记住那么多的数据库命令,真的是非常痛苦的事情。今天我们就把一些常用的 MySQL 命令整理一下,供大家在需要的时候查阅。本文介绍的命令,适用于 MySQL 和 MariaDB。

在 Linux 中安装 MySQL

MySQLMariaDB 在官方软件库中,可以直接使用包管理器进行安装,如下所示。

----------- MySQL ----------- 
$ sudo apt install mysql-server     [On Debian, Ubuntu and Mint]
$ sudo apt install mysql-server   [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]

----------- MariaDB -----------
$ sudo apt install mariadb-server   [On Debian, Ubuntu and Mint]
$ sudo dnf install mariadb-server   [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]

MySQL 启动及安全配置

在安装了 MariaDBMySQL 后,需要启动、设置开机启动并检查 MySQL 的运行状态。配置 MySQL 开机启动,确保其在系统重新启动后它可自动运行。

要启动 MySQL,请运行以下命令:

$ sudo systemctl start mysql/mysqld
或者
$ sudo systemctl start mariadb

要配置 MySQL 开机启动,请运行以下命令:

$ sudo systemctl enable mysql/mysqld
或者
$ sudo systemctl enable mariadb

要检查 MySQL 的运行状态,请运行以下命令:

$ sudo systemctl status mysql/mysqld
 OR
$ sudo systemctl status mariadb
检查 MySQL 运行状态
检查 MySQL 运行状态

现在我们已经启动了 MySQL,需要运行以下命令对 MySQL 进行安全配置:

$ sudo mysql_secure_installation
安全 MySQL 安装
安全 MySQL 安装

可以根据提示,对 MySQL 进行配置。

MySQL 数据库管理命令

要连接 MySQL,请遵循以下语法规则:

$ mysql -u [username] -p

首先,使用 root 用户连接 MySQL,如下所示。

$ mysql -u root -p
连接 MySQL 数据库
连接 MySQL 数据库

现在我们就连接到 MySQL 的命令行界面中,在这里可以执行 SQL 查询。

创建一个新的 MySQL 用户

要创建新的 MySQL 用户,请运行以下 SQL 命令。

MariaDB [(none)]> CREATE USER ' your_user '@'localhost' IDENTIFIED BY 'your_user_password '; 

执行下面的命令,授予该用户与 root 用户相同的权限,执行完成后,执行“exit”命令,退出 MySQL 控制台:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO ' your_user '@'localhost';
MariaDB [(none)]> EXIT;

要使用该用户连接到 MySQL 控制台,可以执行下面的命令。

$ mysql -u your_user -p
以用户身份连接 MySQL 数据库
以用户身份连接 MySQL 数据库

使用 MySQL 数据库

要显示所有活动的 MySQL 数据库,请运行以下命令:

MariaDB [(none)]> SHOW DATABASES; 

要创建一个新的 MySQL 数据库,请运行下面的命令:

MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS database_name;

要删除不再使用的 MySQL 数据库,请运行下面的命令:

MariaDB [(none)]> DROP DATABASE IF EXISTS database_name;
使用 MySQL 数据库
使用 MySQL 数据库

要切换到特定的 MySQL 数据库,请运行下面的命令:

MariaDB [(none)]> USE database_name;

使用 MySQL 数据库表

首先连接到特定数据库,并使用命令列出所有 MySQL 表:

MariaDB [(none)]> USE database_name;
MariaDB [(none)]> SHOW TABLES;
显示 MySQL 数据库表
显示 MySQL 数据库表

要创建新的数据库表,可以使用下面的命令。

CREATE TABLE IF NOT EXISTS table_name(
column_list
);
创建新的 MySQL 数据库表
创建新的 MySQL 数据库表

要删除现有的数据库表,请使用以下命令语法:

MariaDB [(none)]> DROP TABLE IF EXISTS table_name;

要将新列添加到现有数据库表,请执行以下命令:

MariaDB [(none)]> ALTER TABLE table_name ADD COLUMN column_name;

要删除数据库表列,请使用下面的命令:

MariaDB [(none)]> ALTER TABLE table_name DROP COLUMN column_name;

如果数据库表需要一个主键,可以在命令中包含一个主键:

MariaDB [(none)]> ALTER TABLE table_name ADD PRIMARY KEY (column_name);
使用 MySQL 数据库表
使用 MySQL 数据库表

要删除分配给数据库表的主键,请运行下面的命令:

MariaDB [(none)]> ALTER TABLE table_name DROP PRIMARY KEY;

要查看与特定数据库表关联的列,请运行下面的命令:

MariaDB [(none)]> DESCRIBE table_name;
查看 MySQL 数据库表列
查看 MySQL 数据库表列

要查看特定列信息,请运行下面的命令:

MariaDB [(none)]> DESCRIBE table_name table_column;
查看 MySQL 列信息
查看 MySQL 列信息

查询 MySQL 数据库数据

要查询与特定数据库表关联的所有数据,请运行:

MariaDB [(none)]> SELECT * FROM table_name;
查询 MySQL 表
查询 MySQL 表

要查询一个或多个表列数据,请运行下面的命令:

MariaDB [(none)]> SELECT column_name1, column_name2, column_name3 FROM table_name;
查询 MySQL 列数据
查询 MySQL 列数据

如的数据库表查询有重复的行,可以使用以下命令排除它们:

MariaDB [(none)]> SELECT DISTINCT COLUMN FROM table_name;

要插入新的数据库表记录,请执行下面的命令:

MariaDB [(none)]> INSERT INTO table_name(column_list) VALUES(value_list); 
插入新的 MySQL 表记录
插入新的 MySQL 表记录

更新现有数据库表记录:

MariaDB [(none)]> Update table_name SET column1=value1;
更新 MySQL 数据库表记录
更新 MySQL 数据库表记录

数据库备份和恢复

在这里,我们使用 mysqldump 命令对数据库进行备份和恢复。

首先查看要备份或恢复的数据库和数据库表。

MariaDB [(none)]> show databases;
MariaDB [(none)]> show tables;

要备份单个 MySQL 数据库,请使用以下语法命令:

$ sudo mysqldump -u [db_username] -p[db_password] [database_name] > [generated_db_backup.sql]

如下面的命令所示:

$ sudo mysqldump -u root -pid@pa55word demodb > demodb.sql
MySQL 数据库备份
MySQL 数据库备份

如果要处理多个数据库,请执行下面的命令:

$ sudo mysqldump -u root -pid@pa55word --databases demodb mysql > demodb_mysql.sql

备份所有 MySQL 数据库:

$ sudo mysqldump -u root -pid@pa55word --all-databases > all_databases.sql

要备份一个名为 tasks 的数据库表:

$ sudo mysqldump -u root -pid@pa55word demodb tasks > demodb_tasks.sql

备份多个数据库表(用户和主机):

$ sudo mysqldump -u root -pid@pa55word mysql user host > mysql_user+host.sql 

要恢复 MySQL 数据库或数据库表,请使用mysql命令而不是mysqldump>命令,并将符号与符号切换<

例如,要恢复一个名为demodb的 MySQL 数据库,请执行以下命令:

$ sudo mysql -u root -pid@pa55word demodb < demodb.sql 

要从远程服务器备份数据库数据到本地计算机,需要知道托管 MySQL 的远程服务器的 IP 地址。例如,要本地备份远程服务器上的某个数据库,执行下面的命令:

$ sudo mysqldump -h 192.168.84.130 -u remote_user -p dbdemo > dbdemo.sql  

系统将提示输入数据库用户密码以开始备份过程。还要确保已允许远程访问 MySQL 服务器。

远程 MySQL 数据库备份
远程 MySQL 数据库备份

作者:牛奇网,本站文章均为辛苦原创,在此严正声明,本站内容严禁采集转载,面斥不雅请好自为之,本文网址:https://www.niuqi360.com/linux/common-mysql-database-commands/

(0)
上一篇 2022年2月16日 下午9:01
下一篇 2022年2月18日 下午10:50

相关推荐

发表评论

登录后才能评论