在此将介绍MySQL数据库的一些基本管理操作,包括如何登录,退出MySql环境及管理数据库、表的常用SQL语句。
1、登录及退出MySql环境:
使用MySql客户端命令工具"mysql"可以连接并登录到MySql环境,在带有提示符“mysql>”的交互式命令环境中进行操作。在该操作环境中,输入的每一条数据库管理命令以分号“;”表示结束,可以不区分大小写(但习惯上将SQL语句中的关键字使用大写)。
对于刚初始化完毕的MySql数据库服务器来说,其管理员账号root默认是没有设置密码的,只要直接执行“mysql -u root”命令,即可以root用户身份登录本机的MySql服务器。在“mysql>”环境中,输入“exit”命令即可退出。
&:为了安全起见,建议使用mysqladmin命令工具为MySql数据库的root用户设置一个密码。再次连接mysqld服务时,需要在“mysql -u root”命令后加上“-p”参数,根据系统提示输入正确的密码后才可以登录MySql环境。(我没有把MySql变量输出到全局喔)!
需要注意,这个root用户是用来访问mysqld服务的,而不是登录Linux系统的root用户喔!
2、显示数据库结构:
1>:查看数据库中的列表信息
SHOW DATABASES语句;用于查看MySql服务器中包含的数据库列表。经初始化后的MySql服务器,默认建立了三个数据库:test、mysql和information_schema。
eg:查看MySQl服务器中的包含哪些数据库。
2>:查看数据库中的数据表信息
SHOW TABLES语句:用于显示当前数据库中包含的数据表。在显示数据表之前,需要先使用“USE”语句切换到所使用的库。
eg:却换到数据库mysql,并显示其中包含有哪些数据表。
MySql数据库的数据文件存储在目录"/opt/mysql/var"中(因为我的mysql就安在/opt下面),每个数据库对应一个目录,用于存储数据表文件。每一个数据表对应为三个文件,后缀名分别为“.frm”、".MYD"和“.MYI”。
eg:查看数据库mysql中user表对应的文件数据。
3>:显示数据表的结构。
DESCRIBE语句:用于显示数据表中列的信息(或者叫表结构),以“数据库名表名”作为命令参数。命令格式为:
DESCRIBE [数据库名.]表名
当省略数据库名时,则以为是查询当前数据库中的表。
eg:使用数据库mysql,并显示其中user表的信息。
3、数据库的创建与删除
1>:创建新的数据库
CREATE DATABASE语句:用于创建一个新的数据库,使用数据库名称作为参数,
命令格式: CREATE DATABASE 数据库名
eg:创建一个名为“auth”的新数据库
创建数据库需要有足够的权限,且数据库名称必须唯一。刚建立的数据库是空的不包含任何表,在“/opt/mysql/var”目录下会对应有一个与数据库名称相同的目录。(不再查看!自己看喔!)
2>:创建新的数据表
CREATE TABLE 语句,用于在数据库中创建新的数据表,需要使用数据表名称作为参数。
命令格式:CREATE TABLE 表名(字段定义。。。。。。)
eg:在auth库中创建一个名为“users”的表。包含两个字段user_name、user_passwd,均为非空字符串值,初始密码设为"123456",其中user_name字段被设为关键索引字段(PRIMARY KEY)。
3>:删除一个数据表
DROP TABLE 语句:用于在数据库中删除指定的数据表,需要使用数据表名称作为参数。命令格式为:
DROP TABLE [数据库名.]表名
eg:删除数据库auth中的users表
4>:删除一个数据库
DROP DATABASE 语句:用于删除指定的数据库,需要使用数据库名称作为参数。
命令格式为:DROP DATABASE 数据库名
eg:删除auth数据库
4、数据录入与维护
参考上述步骤创建auth数据库和users表,下面将以此为基础,学习如何使用INSERT、SELECT、UPDATE和DELETE语句向数据表总插入、查询、修改及删除数据记录。
1>:插入新的数据记录
INSERT 语句:用于想数据表中插入新的数据记录。命令格式为:
INSERT INTO 表名(字段1,字段2,。。。) VALUES(字段1的值,字段2的值,。。。)
eg:在auth库下的user表中插入两个用户zhangsan、lisi的记录,密码分别是“123456”和“654321”。
2>:查询数据记录
SELECT语句:用于从数据表中查找符合条件的数据记录,MySql数据库支持标准的SQL查询语句。命令格式为:
SELECT 字段名1,字段名2。。。 FROM 表名 WHERE 条件表达式
表示所有字段时可以使用通配符“*”,不指定特定条件时可以省略“WHERE”部分。
eg:在auth库的users表中,查看所有的数据记录。
其中,密码字段的值将显示为加密的字符串信息。
eg:在auth库的user表中,查询用户名为“zhangsan”的记录、输出用户名、密码字段。
3>:修改数据记录
UPDATE 语句:用于修改、更新数据表中的数据记录。命令格式为:
UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] WHERE 条件表达式
eg:将数据库用户lisi的密码更改为“123456”。
eg:更改root管理员的密码,更改完执行“FLUSH PRIVILEGES”语句刷新用户授权信息。
4>:删除数据记录
DELETE 语句:用于在数据表中删除指定的数据记录。命令格式为:
DELETE FROM 表名 WHERE 条件表达式
eg:在auth库的user表中,删除name字段的值为“lisi”的数据记录。
eg:为安全起见应删除Mysql的空用户。
3、维护数据库及用户权限
对于许多公司的网络管理员来说,可能并不需要掌握非常复杂的数据库语句(这些工作往往由网站开发人员或者专职的数据库管理员来完成)。然而从服务器本身的运行维护角度来说,掌握必要的数据库维护知识仍然是必不可少的。下面简单介绍如何对MySql数据库进行备份或恢复操作,以及关于MySql用户的权限管理。
1>:数据库的备份与恢复
I:备份数据库
及时备份数据库是信息安全管理的重要工作内容之一。MySql数据备份可以使用多种方式,直接备份数据库目录"/opt/mysql/var"是一种比较快捷的方式,而更广泛使用的做法是使用mysqldump命令来完成备份。
使用mysqldump命令可以将数据库信息导出为SQL脚本文件,这样的脚本文件还能在不同版本的MySql服务器上使用。例如,当需要升级MySql数据库软件的版本时,使用mysqldump命令将原有数据库信息导出,直接在更新后的MySql服务器中导入即可。
mysqldump命令可以完成全部数据库、指定数据库、数据表的备份。命令格式为:
mysqldump -u 用户名 -p [密码] [options] [数据库名] [表名] > /备份路径/备份文件名
eg:备份整个auth数据库。
eg:备份数据库mysql中的user表、host表
eg:备份MySql服务器中的所有数据库的内容(添加“--all-databases”选项),当需要备份的信息较多时,可以添加“--opt”选项进行优化,以加快备份速度。
II:恢复数据库
对于使用mysqldump命令导出的备份文件,在需要恢复时可以直接通过mysql命令进行导入。使用mysql命令导入.sql脚本文件时;
命令格式为:mysql -u root -p [数据库名] < /备份路径、备份文件名
eg:备份文件包括所有的(或多个)数据库信息时,执行mysql导入时可以不指定数据库名。
eg:备份文件只包含单个数据库或单个数据表时,执行mysql导入时需要指定目标数据库的名称。
2>:用户及权限设置
前面过程中,对MySql数据库的大部分操作都是使用root账号进行的。由于root账号拥有对MySql数据库的全部权限,频繁使用root账号将给数据库服务带来一定的风险。在实际工作中,通常会建立一些专门的用户,只负责特定的数据库、表的管理和维护,从而将权限限制在一定的范围内。
MySql数据库用户的权限管理主要包括三个方面:授予权限、查看权限、撤销权限。下面分别介绍:
1>>>:授予权限
GRANT 语句是用来创建用户并进行授权的最常用语句。当指定用户名不存在时,GRANT语句将会创建新的用户,否则用于修改用户信息。命令格式为:GRANT 权限列表 ON 数据库名.表名 TO 用户名@来源地址 [IDENTIFIED BY '密码']
使用GRANT语句时,需要注意的事项如下:
>:权限列表:使用“ALL”关键字代表全部权限,同时授予多个权限时,以逗号","分隔,例如“select,insert,update,delete”。
>:表名:可使用通配符“*”表示指定数据库中的所有数据表。
>:用户名@来源地址:用来设置谁能连接,能从哪里连接。用户名不能使用通配符,但使用连续的两个单引号“ ‘’ ”时表示空字符串,可用于匹配任何用户。来源地址表示连接数据库的客户机地址,可使用“%”作为通配符,匹配某个域内的所有地址(如:%.benet.com),或使用带掩码标记的网络地址(如:192.168.1.0/24)。
>:IDENTIFIED BY :用于设置用户连接数据库时使用的密码字符串,密码经过加密后存储与mysql库的user表中,省略“IDENTIFIED BY”部分时,新用户的密码将为空。
eg:授权数据库用户xiaoqi,允许其从本机连接到MySql服务器,只能查看auth库中的users表的内容,使用密码“123456”进行验证。
切换到其他终端,使用用户xiaoqi的身份连接数据库,当查看非授权的数据表时将被拒绝。
eg:查看已授权数据表——(auth.users)。
eg:授权数据库用户admin1,允许其从本机连接到MySql服务器,对auth库中的所有表具有完全权限,使用密码"123456"验证。
mysql>grant all on auth.* admin1@'localhost' identified by '123456';
eg:授权数据库用户admin2,允许其从网段192.168.0.0/24中访问MySql服务器,可以查询auth库中的所有表,使用密码“123456”进行验证。
mysql>grant select on auth.* to admin2@'192.168.0.0/24' identified by "123456";
eg:授权数据库用户admin3,允许其从benet.com域内的任何主机访问MySql服务器,对auth库下的所有表具有select、insert权限,使用密码"123456"验证。
mysql>grant select,insert on auth.* admin3@'%benet.com' identified by "123456";
2>>>:查看权限
需要查看用户权限时,可直接使用SELECT语句对user、db、host、数据表进行查询,也可以使用SHOW语句进行查看,后者相对更加简单,命令格式为:SHOW GRANTS FOR 用户名@域名或IP
eg:查看数据库用户root从服务器本机进行连接时的权限。(嘿嘿!)
eg:查看数据库用户xiaoqi从本地服务器连接时的权限。
3>>>:撤销权限
REVOKE语句:用于撤销指定数据库用户和权限。
命令格式为:REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@域名或IP
eg:撤销数据用户xiaoqi从服务器本地对auth数据库users表的所有权限。
掌握上述各种MySql管理命令的使用,已经可以满足不多数网络管理员(非专职数据库管理员)的工作需要。嘿嘿!数据库可是一门高深的学问,没那么简单喔!!!
出处:http://hi.baidu.com/%BA%CE%B4%A6%C8%BE%B3%BE%B0%A3a/blog/item/51dd03d5dbcf0df877c63883.html
分享到:
相关推荐
在Linux系统中,MySQL数据库是广泛使用的关系型数据库管理系统,尤其在服务器端应用程序开发和大数据存储方面占据着重要地位。为了充分利用MySQL的功能并进行数据库驱动的程序开发,我们需要安装MySQL的开发库,即...
7. **Linux——mysql基本管理命令_何处染尘埃_百度空间.html**:提供了一些基础的Linux环境下MySQL数据库的管理命令,这对于在服务器端进行ECSHOP部署和维护的开发者很有用。 8. **ECshop模板制作教程EC新手入门...
本教程将详细阐述如何在 CentOS 7 操作系统中安装 MySQL 5.7.22 数据库服务,这对于那些需要搭建数据库环境或者深入理解Linux系统管理的IT专业人士来说是必备的知识。 首先,我们来看“mysql-5.7.22-1.el7.x86_64....
在"LINUX_VI 项目——学生信息管理系统"中,我们主要关注的是在Linux环境下使用VI编辑器进行项目开发,特别是涉及到双链表的数据结构以及学生信息管理。这个系统旨在为不同角色(管理员、教师和学生)提供对教师和...
在Linux环境下安装和卸载MySQL数据库是一个常见的任务,尤其对于系统管理员和开发者来说至关重要。以下是一些关键步骤和注意事项: 1. **安装MySQL**: - 使用`root`权限:在Linux上安装MySQL时,由于涉及到系统...
【Linux基础】 Linux是一种自由和开放源码的类UNIX操作系统,广泛应用于服务器、云计算、...通过学习这些内容,你可以掌握Linux系统的日常操作和MySQL数据库的基本管理,为后续的系统管理和数据库开发打下坚实基础。
MySQL 5.7.34 是 MySQL 数据库管理系统的一个稳定版本,专为 Linux 操作系统设计。在Linux服务器上安装 MySQL 5.7,需要理解以下几个关键知识点: 1. **MySQL简介**:MySQL 是一个开源的关系型数据库管理系统,广泛...
8. **Navicat**:Navicat是另一个广受欢迎的MySQL管理工具,提供跨平台支持,包括Windows、Mac和Linux。它有强大的数据库设计、备份、同步和数据传输功能,还有数据可视化和数据建模工具。 9. **dbeaver**:Dbeaver...
尽管MySQL不支持增量备份,但提供了另一种解决方案——主从备份机制,允许将主数据库的数据实时同步到备份数据库中,从而实现热备份。 #### 版本需求 为了实施双机热备,需要满足以下版本要求: - MySQL版本必须...
在Linux环境中,安装MySQL数据库是系统管理的重要环节。本文主要关注如何快速安装MySQL的两个主要版本——MySQL5.6和5.7,并介绍如何重置MySQL的登录密码。以下是详细的步骤和注意事项: 首先,需要检查系统中是否...
- Linux用户管理的基本概念。 5. **修改权限** - 使用`chown`命令修改MySQL安装目录的所有权。 - 命令:`chown -R mysql:mysql ./` - 知识点扩展: - `chown`命令的用法及权限管理机制。 - Linux文件权限...
安装过程中,还将涉及RHEL4的基本命令使用,如SSH Secure Shell Client的安装与使用,这是远程管理Linux系统的重要工具。 在RHEL4命令使用部分,课程详细讲解了Linux的目录结构、权限控制、vi编辑器的使用、文件...
本文档旨在指导读者如何在 RedHat Linux 平台上配置和使用 MySQL 数据库。 MySQL 数据库的安装 在配置 MySQL 数据库之前,需要先安装 Perl 语言的支持,因为 MySQL 需要 Perl 语言的支持才能正常运行。此外,还...
在 Linux RedHat 系统上安装 MySQL 数据库是一项常见的系统管理任务。本文将详细介绍如何在 RedHat 系统上安装 MySQL,并覆盖安装前的准备、安装过程、验证安装以及设置密码等关键步骤。此外,还将提供一些故障排查...
总之,MySQL 5.7.18在5.x系列中是一个重要的里程碑,它为开发者提供了更强大的功能和更高的性能,同时保持了MySQL的核心优势——易用性、稳定性和社区支持。在Linux环境下,通过解压和安装`.tar.gz`包,您可以轻松地...
MySQL是一个开源、免费的关系型数据库管理系统,被广泛应用于Web应用开发、数据分析等领域。它支持SQL标准,并具有高性能、可移植性、易于使用的特点。 2. **安装与配置**: 学习资料可能包括如何在Windows、...
【基于LINUX的网站建设技术研究——Linux Apache】 在当前的信息时代,计算机网络已经成为社会生活的重要组成部分,而互联网技术的快速发展更是推动了全球信息高速公路的建设。其中,WWW(World Wide Web)服务作为...
01/ 大数据课程介绍 1 02/ 基础课程内容介绍 1 03/ Linux基础 2 3.1 系统安装准备 2 ...4.4 RPM方式软件安装——MySql数据库安装 31 4.5 YUM方式软件安装 34 4.6 C语言软件源码编译安装——redis服务器安装 39