> 文章列表 > 58 openEuler搭建Mariadb数据库服务器-管理数据库

58 openEuler搭建Mariadb数据库服务器-管理数据库

58 openEuler搭建Mariadb数据库服务器-管理数据库

文章目录

    • 58 openEuler搭建Mariadb数据库服务器-管理数据库
      • 58.1 创建数据库
      • 58.2 查看数据库
      • 58.3 选择数据库
      • 58.4 删除数据库
      • 58.5 备份数据库
      • 58.6 恢复数据库

58 openEuler搭建Mariadb数据库服务器-管理数据库

58.1 创建数据库

可以使用CREATE DATABASE语句来创建数据库。

CREATE DATABASE databasename;

其中:databasename为数据库名称,且数据库名称不区分大小写。

例如示例命令如下:

创建数据库名为testdb的数据库。

MariaDB [(none)]> CREATE DATABASE testdb;
Query OK, 1 row affected (0.000 sec)MariaDB [(none)]> 

58.2 查看数据库

可以使用SHOW DATABASES语句来查看数据库。

SHOW DATABASES;

例如示例命令如下:

查看所有数据库。

MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| testdb             |
+--------------------+
4 rows in set (0.000 sec)MariaDB [(none)]> 

58.3 选择数据库

一般创建表,查询表等操作首先需要选择一个目标数据库。可以使用USE语句来选择数据库。

USE databasename;

其中:databasename为数据库名称。

例如示例命令如下:

选择testdb数据库。

MariaDB [(none)]> USE testdb;
Database changed
MariaDB [testdb]> 

58.4 删除数据库

可以使用DROP DATABASE语句来删除数据库。

58 openEuler搭建Mariadb数据库服务器-管理数据库 注意:
删除数据库要谨慎操作,一旦删除,数据库中的所有表和数据都会删除。

DROP DATABASE databasename;

其中:databasename为数据库名称。

DROP DATABASE命令用于删除创建过(已存在)的数据库,且会删除数据库中的所有表,但数据库的用户权限不会自动删除。

要使用DROP DATABASE,您需要数据库的DROP权限。

DROP SCHEMA是DROP DATABASE的同义词。

例如示例命令如下:

删除testdb数据库。

MariaDB [testdb]> DROP DATABASE testdb;
Query OK, 0 rows affected (0.001 sec)MariaDB [(none)]> 

58.5 备份数据库

可以在root权限下使用mysqldump命令备份数据库。

备份一个或多个表:

# mysqldump [options] databasename [tablename ...] > outfile

备份一个或多个库:

# mysqldump [options] -databases databasename ... > outfile

备份所有库:

# mysqldump [options] -all-databases > outputfile

其中:

  • databasename:数据库名称。
  • tablename:数据表名称。
  • outfile:数据库备份的文件。
  • options:mysqldump命令参数选项,多个参数之间可以使用空格分隔。常用的mysqldump命令参数选项如下:
    • -u, --user= username :指定用户名。
    • -p, --password[= password]:指定密码。
    • -P, --port= portnumber :指定端口。
    • -h, --host= hostname :指定主机名。
    • -r, --result-file= filename :将导出结果保存到指定的文件中,等同于“>”。
    • -t:只备份数据。
    • -d:只备份表结构。

例如示例命令如下:

备份主机为192.168.0.21,端口为3306,root用户下的所有数据库到alldb.sql中。

[root@superman-21 ~]# mysqldump -h 192.168.0.21 -P 3306 -uroot -p123456 --all-databases > alldb.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@superman-21 ~]# 

备份主机为192.168.0.21,端口为3306,root用户下的db1数据库到db1.sql中。

[root@superman-21 ~]# mysqldump -h 192.168.0.21 -P 3306 -uroot -p123456 --databases db1 > db1.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@superman-21 ~]# 

备份主机为192.168.0.21,端口为3306,root用户下的db1数据库的tb1表到db1tb1.sql中。

[root@superman-21 ~]# mysqldump -h 192.168.0.21 -P 3306 -uroot -p123456 db1 tb1 > db1tb1.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@superman-21 ~]# 

只备份主机为192.168.0.21,端口为3306,root用户下的db1数据库的表结构到db1_str.sql中。

[root@superman-21 ~]# mysqldump -h 192.168.0.21 -P 3306 -uroot -p123456 -d db1 > db1_str.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@superman-21 ~]# 

只备份主机为192.168.0.21,端口为3306,root用户下的db1数据库的数据到db1_data.sql中。

[root@superman-21 ~]# mysqldump -h 192.168.0.21 -P 3306 -uroot -p123456 -t db1 > db1_data.sql
mysqldump: [Warning] Using a password on the command line interface can be insecure.
[root@superman-21 ~]# 

58.6 恢复数据库

可以在root权限下使用mysql命令恢复数据库。

恢复一个或多个表:

# mysql -h hostname -P portnumber -u username -ppassword databasename < infile

其中:

  • hostname:主机名。
  • portnumber:端口号。
  • username:用户名。
  • password:密码。
  • databasename:数据库名。
  • infile:mysqldump命令中的outfile参数。

例如示例命令如下:

恢复数据库。

[root@superman-21 ~]# mysql -h 192.168.0.21 -P 3306 -uroot -p123456 -t db1 < db1_data.sql
mysql: [Warning] Using a password on the command line interface can be insecure.
[root@superman-21 ~]# 

👍 点赞,你的认可是我创作的动力!

⭐️ 收藏,你的青睐是我努力的方向!

✏️ 评论,你的意见是我进步的财富!

在这里插入图片描述