QQ个性网:专注于分享免费的QQ个性内容

关于我们| 网站公告| 广告服务| 联系我们| 网站地图

搜索
编程 JavaScript Java C++ Python SQL C Io ML COBOL Racket APL OCaml ABC Sed Bash Visual Basic Modula-2 Logo Delphi IDL Groovy Julia REXX Chapel X10 Forth Eiffel C# Go Rust PHP Swift Kotlin R Dart Perl Ruby TypeScript MATLAB Shell Lua Scala Objective-C F# Haskell Elixir Lisp Prolog Ada Fortran Erlang Scheme Smalltalk ABAP D ActionScript Tcl AWK IDL J PostScript IDL PL/SQL PowerShell

如何轻松管理 MySQL 数据库?详尽步骤解析

日期:2025/04/03 17:45来源:未知 人气:56

导读:1. 启动 MySQL 服务首先,在桌面上找到并右击“此电脑”,选择“管理”命令,即可进入管理界面。进入“此电脑”的管理页面后,会弹出一个“计算机管理”的对话框。在这个对话框中,我们可以看到左侧的导航栏里有一个“服务和应用程序”的选项,双击它就可以展开服务列表。在服务列表中,用户可以查看计算机上所有服务的当前状态。如果MySQL服务的状态显示为“正在运行”,那就说明该服务已经成......

1. 启动 MySQL 服务

首先,在桌面上找到并右击“此电脑”,选择“管理”命令,即可进入管理界面。 进入“此电脑”的管理页面后,会弹出一个“计算机管理”的对话框。在这个对话框中,我们可以看到左侧的导航栏里有一个“服务和应用程序”的选项,双击它就可以展开服务列表。在服务列表中,用户可以查看计算机上所有服务的当前状态。如果MySQL服务的状态显示为“正在运行”,那就说明该服务已经成功启动了,如图所示。 注意:由于MySQL被设置为自动启动,因此在这里我们可以看到服务已经成功启动,并且启动类型显示为自动。若缺乏“正在运行”的提示,则意味着MySQL服务尚未启动。用户既可以在“计算机管理”窗口中通过菜单命令来启动服务,也可以在DOS命令行中输入相关命令来启动或停止MySQL服务。具体而言,单击“开始”→“运行”,输入cmd命令后按回车键,即可进入命令提示符界面。在此输入net start mysql并按回车键,即可启动MySQL服务。若需停止服务,则可使用net stop mysql命令。

2. 登陆 MySQL 数据库

在命令行提示界面(可以通过按下“Win + R”组合键,然后输入“cmd”来打开),输入以下命令之一:mysql -h 127.0.0.1 -u root -p,或者mysql -h localhost -u root -p,又或者简写为mysql -u root -p。这些命令旨在以管理员“root”用户的身份登录MySQL数据库。按下回车键后,系统将提示输入密码(Enter password)。在此输入正确的密码后,即可成功登录MySQL数据库,如上图所示。 说明: mysql 是登录命令; -h 后的参数指定服务器主机地址,若客户端与服务器在同一台机器上,可输入 localhost 或 IP 地址; -u 后接登录数据库的用户名,此处为 root; -p 后跟用户登录密码。可在 mysql 命令中直接加入密码,如 mysql -h localhost -u root -proot,其中 -p 后紧接的 root 即为密码,需注意 -p 与密码间不得有空格,否则系统将无法识别后续字符串为密码。 登录成功后,你会看到MySQL的初始界面,其中包含一条欢迎信息:“Welcome to the MySQL monitor”,以及一些说明性语句。这些语句解释了如何在mysql命令行中操作,包括命令的结束符、数据库连接id、服务器版本和获取帮助的方法。当命令提示符变为“mysql>”时,表示已成功登录MySQL服务器,你可以开始执行数据库操作了。

在MySQL命令行中,每个命令都必须以分号(;)结尾,然后按下Enter键执行。如果你想重复执行之前的命令或修改后再执行,可以使用上下键浏览已执行过的命令。要退出MySQL环境,只需输入“exit;”即可。

此外,MySQL软件安装完成后,通常会附带一个简单的命令行客户端程序(MySQL Command Line Client),尽管它没有流行的用户界面,但足以满足基本的数据库操作需求。 选择“开始”菜单,然后依次点击“程序”、“MySQL”和“MySQL 8.0 Command Line Client”,即可打开MySQL Command Line Client。接下来,你会看到一个提示输入密码的界面,如图所示。 MySQL 命令行界面

打开MySQL Command Line Client后,你会看到一个命令行窗口,也被称为命令行界面。在这个界面中,你可以输入SQL语句来与MySQL数据库进行交互。 在输入正确的密码后,你将成功登录到MySQL软件。请注意,为了通过命令行界面登录MySQL,必须确保MySQL服务已经启动且运行正常。

3

创建数据库 在MySQL中,你可以使用CREATE DATABASE语句来创建一个新的数据库。该语句的语法如下:

CREATE DATABASE [IF NOT EXISTS] <数据库名>[[DEFAULT] CHARACTER SET <字符集名>] [[DEFAULT] COLLATE <校对规则名>];

其中,<数据库名>是你想要创建的数据库的名称。请注意,数据库名称必须符合操作系统的文件夹命名规则,不能以数字开头,且尽量具有实际意义。此外,MySQL不区分数据库名称的大小写。

IF NOT EXISTS是一个可选子句,它会在创建数据库之前进行检查,确保只有当该数据库尚不存在时才会执行创建操作。这样,你可以避免因重复创建已存在的数据库而引发的错误。

[DEFAULT] CHARACTER SET[DEFAULT] COLLATE也是可选的子句,它们分别用于指定数据库的字符集和默认校对规则。指定这些选项的目的是为了避免在数据库中存储的数据出现乱码问题。如果不指定这些选项,MySQL将使用系统的默认设置。

接下来,让我们看一个简单的实例。假设你想要在MySQL中创建一个名为"school"的数据库,你可以在MySQL命令行客户端中输入以下SQL语句:

CREATE DATABASE school;

执行该语句后,MySQL将创建一个名为"school"的新数据库。 Query OK, 1 row affected (0.12 sec);”的提示信息中,“Query OK”表明你执行的命令已经成功,“1 row affected”意味着操作仅改变了数据库中一行数据的记录状态,“0.12 sec”则表示操作执行所需的时间为0.12秒。如果你再次尝试执行CREATE DATABASE school;这条命令,系统会显示一个错误信息,提示你已经尝试创建了一个同名的数据库。 提示无法创建“school”数据库,因为该数据库已存在。MySQL不允许在同一个系统中创建两个同名的数据库。为了避免此类错误,可以添加“IF NOT EXISTS”子句,例如:

4

查看或显示数据库

数据库可以被视为专门用于存储数据对象的容器,每个数据库都拥有独一无二的名称,这些名称通常具有实际意义,从而清晰地反映出每个数据库所存储的数据类型。在MySQL数据库中,我们区分系统数据库和自定义数据库。系统数据库是在MySQL安装过程中自动创建的,而自定义数据库则是由用户根据需求创建的。

使用SHOW DATABASES [LIKE '数据库名'];指令,我们可以查看服务器上当前存在的数据库列表。该指令中的LIKE子句是可选的,它允许我们按照指定的模式匹配数据库名称,这种匹配既可以是部分的,也可以是完整的。需要注意的是,数据库名必须用单引号(' ')包围起来。

接下来,我们将通过一个实例来展示如何查看所有数据库——即列出当前用户有权查看的所有数据库名称。 在上面的列表中,我们可以发现共有6个数据库,它们都是在安装MySQL时由系统自动创建的。这些数据库各自承担着不同的功能:

  • information_schema:这个数据库主要存储了系统中的各类数据库对象信息,如用户表、列信息、权限信息等,为系统提供全面的数据库对象信息查询。
  • mysql:作为MySQL的核心数据库,它类似于SQL Server中的master表,负责存储数据库用户的访问权限等控制和管理信息。在这里,我们常会进行诸如修改root用户密码的操作。
  • performance_schema:该数据库专注于收集数据库服务器的性能参数,为性能调优和监控提供数据支持。
  • sakila:这是MySQL提供的样例数据库,包含16张常见数据表,为数据库设计者提供快速设计所需数据表的参考。
  • sys:这个数据库提供了一系列视图,其数据来源于performance_schema,旨在帮助开发者和使用者更便捷地查看和分析性能问题。
  • world:world数据库是MySQL自动创建的,其中仅包含3张数据表,分别记录城市、国家和语言等信息,为地理和文化研究提供基础数据。

接下来,我们将通过一个实例来展示如何创建并查看一个名为test_db的自定义数据库。 接下来,我们可以使用SHOW DATABASES语句来查看当前用户权限范围内的所有数据库名。执行该语句后,将显示一个包含所有数据库名的列表,如下所示:

(此处应接续具体执行SHOW DATABASES语句后的结果,但原文中未给出具体执行结果,因此无法直接改写为具体执行后的文本。可改写为:“执行SHOW DATABASES语句后,你将看到类似以下的输出:

+--------------------+| Databases |+--------------------+| information_schema || mysql || performance_schema || sakila || sys || world || test_db | (此处假设已成功创建test_db数据库)+--------------------+

这表明,除了系统自动创建的数据库外,我们还成功创建了一个名为test_db的自定义数据库。”) 实例3:使用LIKE从句进行数据库名筛选 首先,我们创建三个数据库,它们的名称分别为db_test、db_test_ddb和test_222_db。接下来,我们可以利用LIKE从句来筛选出符合特定模式的数据库名。例如,如果我们想要查看所有以“db_test”开头的数据库名,我们可以使用类似“SHOW DATABASES LIKE 'db_test%';”的语句来执行这一操作。

  1. 利用LIKE从句,检索与db_test完全一致的数据库:

当我们想要精确地查找与db_test完全匹配的数据库时,我们可以使用LIKE从句配合通配符来实现。例如,语句“SHOW DATABASES LIKE 'db_test';”将仅返回名为db_test的数据库,确保了我们能够准确地获取到所需的数据。

  1. 利用LIKE从句,搜索名称中包含“test”的数据库:

当我们需要查找那些其名称中包含“test”的数据库时,同样可以利用LIKE从句配合通配符来进行。例如,语句“SHOW DATABASES LIKE '%test%';”将返回所有名称中包含“test”的数据库,从而为我们提供了更广泛的搜索范围。 3) 利用LIKE从句,查询以“db”为开头的数据库名称:

当我们想要查看那些以“db”为开头的数据库时,同样可以利用LIKE从句来实现。例如,语句“SHOW DATABASES LIKE 'db%';”将返回所有以“db”为开头的数据库,进一步扩展了我们的查询范围。 4) 利用LIKE从句,查找以“db”结尾的数据库名称: 当我们需要找出所有以“db”结尾的数据库时,同样可以利用LIKE从句来轻松实现。例如,语句“SHOW DATABASES LIKE '%db';”将返回所有符合这一模式的数据库,从而使得我们的查询更加灵活多变。

5) 选择数据库

在MySQL中,存在众多系统自带的数据库。为了确保操作的准确性,我们需要在执行任何数据库操作之前明确当前正在使用的数据库。尽管使用CREATE DATABASE语句创建了新的数据库,但该数据库并不会自动成为当前活动的数据库。因此,我们需要借助USE语句来指定哪个数据库应作为当前活动的数据库。其语法格式如下:

USE <数据库名称>;

执行这条语句后,MySQL会将指定的<数据库名>作为默认的当前数据库,持续到语段的结束或遇到另一条USE语句为止。只有在通过USE语句指定了某个数据库为当前活动数据库之后,我们才能对该数据库及其包含的数据对象执行相应的操作,例如创建或删除表格以及查看数据库中已有的表格。 在执行选择数据库的USE语句后,若出现“Database changed”的提示,这便意味着您已成功将目标数据库切换为当前活动的数据库。在此之后,您便可以对指定的数据库及其包含的数据对象进行相应的操作。

6删除数据库

当数据库不再需要使用时,应该及时将其删除,以释放数据库存储空间并确保其中存放的是最新有效数据。删除数据库意味着从磁盘上彻底清除已存在的数据库,同时删除其中的所有数据。

在MySQL中,可以使用DROP DATABASE语句来删除已创建的数据库。其语法格式为:

DROP DATABASE [ IF EXISTS ] <数据库名>

其中,<数据库名>用于指定要删除的数据库名称。IF EXISTS子句用于防止在尝试删除不存在的数据库时引发错误。使用DROP DATABASE语句时要格外小心,以免误删重要数据。执行此语句需要具备相应的数据库DROP权限。

需要注意的是,MySQL系统在安装后会默认创建两个系统数据库:information_schema和mysql。这两个数据库存储着与数据库相关的关键信息。删除它们将导致MySQL无法正常工作。因此,在执行删除操作时,应确保不误删这两个系统数据库。

以下是一个实例,展示如何从数据库列表中删除名为school2的数据库: 此时,名为school2的数据库已经不存在了。若再次尝试执行相同的命令,直接使用DROP DATABASE school2,系统将返回一个错误提示,提示信息大致如下: 若要避免此类错误,可以使用IF EXISTS子句来进行检查,确保数据库确实存在后再执行DROP操作,示例如下: 使用DROP DATABASE命令时需格外小心,因为执行此命令后,MySQL不会提供任何确认信息。一旦数据库被删除,其中包含的所有数据表和数据将永久消失,且无法恢复。因此,在删除数据库之前,务必先进行备份。有关如何备份数据库的方法,我们将在后续教程中详细介绍。

7创建数据表

在数据库创建完成后,下一步便是构建数据表。数据表是数据库的核心组成部分,用于存储和组织数据。在创建数据表前,需先通过“USE <数据库名>”语句指定操作所针对的数据库。

创建数据表的SQL语句为“CREATE TABLE <表名> ([表定义选项])[表选项][分区选项]”。其中,“表定义选项”规定了列名、列类型等表结构信息。

CREATE TABLE语句的详细说明如下:

  • CREATE TABLE:这是用于创建新表的关键词,执行该语句需要具备相应的CREATE权限。
  • <表名>:指定新表的名称,必须符合数据库的命名规则。在CREATE TABLE之后给出,如需在特定数据库中创建,可加上数据库名称。
  • [表定义选项]:这部分详细定义了表的列、数据类型等信息,是构建数据表的关键部分。

请注意,在执行CREATE TABLE语句时,必须提供完整的表名和必要的表定义选项,以确保数据表能够被正确创建。 要创建的表名在SQL中是不区分大小写的,并且不能使用SQL语言中的保留关键字,例如DROP、ALTER、INSERT等。在定义数据表时,每个列(或字段)的名称和数据类型都必须明确指定。如果需要创建多个列,可以使用逗号将它们分隔开。

以下是一个创建员工信息表的示例:

表名:stuff_info

字段(列)名称 数据类型 说明 id INT(11) 员工编号 name CHAR(25) 员工名字 deptId INT(11) 所在部门 salary FLOAT 工资

在创建完数据表后,记得选择相应的数据库来进行后续操作。 在company数据库中创建stuff_info数据表。 执行上述语句后,将成功创建一个名为stuff_info的数据表。为了确认数据表是否已成功创建,可以使用SHOW TABLES;语句进行查看,结果将显示stuff_info数据表已经存在。 8 查看表结构 在成功创建数据表后,为了确保表的定义无误,我们需要查看其结构定义。在MySQL中,你可以使用DESCRIBE和SHOW CREATE TABLE这两个语句来查看表的结构。 8.1 DESCRIBE/DESC 语句 使用DESCRIBE或DESC语句,你可以轻松查看数据表的字段详细信息。这些信息包括字段名称、数据类型、是否为主键以及是否有默认值等。其语法非常简洁,只需输入DESCRIBE <表名>;或DESC <表名>;即可。例如,要查看名为stuff_info的表结构,你可以执行DESCRIBE stuff_info;这条命令。 其中,各个字段的含义解释如下: Null:这一列标识该字段是否可以存储NULL值。 Key:此字段用于指示该列是否已建立索引。若标注为PRI,则表示该列是表主键的一部分;若为UNI,则表示该列拥有UNIQUE索引;而MUL则意味着在列中某个给定值允许重复出现。 Default:此字段显示该列是否有默认值,以及具体的默认值内容。 Extra:此字段提供与给定列相关的额外信息,例如AUTO_INCREMENT等特殊属性。 8.2SHOW CREATE TABLE语句

SHOW CREATE TABLE语句能够展示出创建表时所使用的CREATE TABLE语句,其语法结构如下:

SHOW CREATE TABLE <表名>\G --请注意,结尾处没有分号。

举例来说,我们可以通过SHOW CREATE TABLE来查看名为stuff_info的表的详细信息。 使用SHOW CREATE TABLE语句,您可以不仅查看创建表时的详细语句,还能了解到所使用的存储引擎和字符编码。在执行该语句时,若不添加“\G”参数,显示的结果可能难以辨识。而通过添加“\G”参数,可以使得输出结果以表格形式呈现,更加清晰直观,便于用户查看和理解。 9. 修改数据表 在数据库设计中,为了确保数据的一致性和规范性,我们可能需要调整或修改已创建的数据表结构。这种操作被称为“修改表”。在MySQL中,我们使用ALTER TABLE语句来执行这一操作。这个语句允许我们执行多种修改操作,如增加或删除列、创建或删除索引、更改列类型、重命名列或表、更改存储引擎以及删除外键约束等。

ALTER TABLE语句的基本语法如下:

ALTER TABLE <表名> [修改选项]

其中,修改选项包括:

  • ADD COLUMN <列名> <类型>:用于添加新列。
  • CHANGE COLUMN <旧列名> <新列名> <新列类型>:用于修改列名或类型。
  • ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }:用于设置或删除列的默认值。
  • MODIFY COLUMN <列名> <类型>:用于修改列的类型。
  • DROP COLUMN <列名>:用于删除列。
  • RENAME TO <新表名>:用于重命名表。 9.1 添加字段(列) 在数据库应用中,随着业务需求的演变,我们常常需要在已有的数据表中增设新的字段。这些字段通常包含字段名、数据类型以及可能的完整性约束。在MySQL中,我们使用ALTER TABLE语句来添加新字段,其基本语法如下:

ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] [FIRST|AFTER 已存在的字段名];

其中,<新字段名>是你希望添加的新字段的名称,而<数据类型>则定义了该字段所存储数据的类型。可选参数FIRST用于将新字段设置为表的首列,而AFTER 已存在的字段名则允许你将新字段添加到指定已存在字段的后面。如果不指定这些参数,新字段将被默认添加到表的最后。

以下是一个具体的示例:使用ALTER TABLE语句修改名为stuff_info的表结构,在表的第一列位置增加一个名为col1的整型字段。 实例2:修改stuff_info表结构,在name列后新增一个整型字段col2 在数据库应用中,经常需要根据业务需求调整表结构。例如,我们可能需要在已有的数据表中增设新字段,或者调整字段的位置。在MySQL中,我们可以使用ALTER TABLE语句来实现这些操作。接下来,我们将通过一个具体的示例来展示如何使用ALTER TABLE语句来修改表结构。

在这个示例中,我们将修改名为stuff_info的表的结构,在名为name的列之后添加一个新的整型字段,字段名为col2。通过这个操作,我们可以轻松地扩展表的功能,以满足不断变化的业务需求。 9.2

修改字段数据类型

在MySQL中,修改字段数据类型意味着将字段的数据类型转换为另一种类型。要执行此操作,可以使用以下语法:

ALTER TABLE <表名> MODIFY <字段名> <新数据类型>

在这个语法中,你需要提供要修改数据类型的字段所在表的名称(表名)、需要修改的字段名称(字段名),以及新数据类型。这样,你就可以轻松地改变字段的数据类型,以适应业务需求的变化。

例如,你可以使用ALTER TABLE语句来修改名为stuff_info的表,将name字段的数据类型从CHAR(25)更改为CHAR(30)。这种灵活性使得数据库管理变得简单而高效。 执行上述ALTER TABLE语句后,我们检查发现,表stuff_info中的name字段数据类型已成功修改为CHAR(30),修改操作完成。 9.3 删除字段

删除字段是指从数据表中移除指定的某个字段。其语法格式为:

ALTER TABLE <表名> DROP <字段名>;

在此格式中,<字段名>代表需要从表中删除的具体字段的名称。例如,若要删除表stuff_info中的col2字段,可以使用以下SQL语句:

ALTER TABLE stuff_info DROP col2;

执行此语句后,表stuff_info中的col2字段将被成功删除。 9.4 修改字段名称 在MySQL中,若需更改表中的字段名称,可以使用以下语法:

ALTER TABLE <表名> CHANGE <旧字段名> <新字段名> <新数据类型>;

其中,<旧字段名>代表字段原先的名称,<新字段名>则是字段的新名称,而<新数据类型>则用于指定新字段的数据类型。若数据类型保持不变,则可忽略此部分,但请注意,数据类型不能为空。

例如,若要修改表stuff_info中的col1字段,将其名称更改为col3,并将数据类型更改为CHAR(30),可以使用以下SQL语句:

ALTER TABLE stuff_info CHANGE col1 col3 CHAR(30);

执行上述语句后,表stuff_info中的col1字段将被成功重命名为col3,并更新为新的数据类型。 CHANGE语句还可以仅用于修改数据类型,达到与MODIFY相似的目的。具体做法是将SQL语句中的“新字段名”和“旧字段名”设为同一名称,仅更改“数据类型”部分。

请注意,由于不同类型的数据在计算机中的存储方式和长度各有差异,因此修改数据类型可能会对数据表中的现有数据记录产生影响。所以在数据表中已有数据的情况下,应谨慎进行数据类型的修改。 9.5 修改表名

在MySQL中,我们可以使用ALTER TABLE语句来更改表名。其语法规则为:

ALTER TABLE <旧表名> RENAME [TO] <新表名>;

请注意,TO是可选参数,其存在与否并不影响语句的执行结果。

例如,我们可以通过执行ALTER TABLE语句,将名为stuff_info的数据表更改为yuangong_info。 提示:在修改表名时,用户可以使用DESC命令来查看修改前后的表结构。需要注意的是,修改表名并不会改变表的结构,因此修改名称后的表与修改前的表在结构上保持一致。 10删除数据表 在MySQL数据库中,如果某个数据表不再需要,我们可以将其从数据库中彻底删除。请注意,删除表的同时,表的结构以及其中的所有数据都会被永久清除,因此在执行删除操作前务必进行备份,以防不测。

要删除一个或多个数据表,我们可以使用DROP TABLE语句。其语法格式如下:

DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...]

其中,表名1, 表名2, 表名3等代表要删除的数据表的名称。通过这个语句,我们可以一次性删除多个表,只需在语句中依次列出各个表名,并用逗号隔开即可。

另外,IF EXISTS是一个可选子句,用于在删除数据表前判断该表是否存在。如果不加IF EXISTS子句,当数据表不存在时,MySQL会报错并中断语句执行;而加上IF EXISTS后,即使数据表不存在,语句也能继续执行,但会发出警告。

还有两点需要注意:首先,执行DROP TABLE命令需要相应的权限;其次,当数据表被删除时,用户在该表上的权限并不会自动被撤销。

接下来,让我们看一个实例。假设我们选择了名为company的数据库,并创建了一个名为dl_test的数据表,现在我们需要删除这个数据表。我们可以使用以下SQL语句来完成这个操作:

DROP TABLE IF EXISTS dl_test; 由执行结果可见,company数据库中包含两张数据表:dl_test和yuangong_info。现在,我们打算删除dl_test数据表。 执行结果揭示,company数据库中的数据表列表已不再包含名为dl_test的表,这表明删除操作已经成功完成。

| 第一部分结束 |

关于我们|网站公告|广告服务|联系我们| 网站地图

Copyright © 2002-2023 某某QQ个性网 版权所有 | 备案号:粤ICP备xxxxxxxx号

声明: 本站非腾讯QQ官方网站 所有软件和文章来自互联网 如有异议 请与本站联系 本站为非赢利性网站 不接受任何赞助和广告