MySQL数据库系统是一个典型的C/S(客户端/服务器)架构的应用,要访问MySQL数据库需要使用专门的客户端软件。在Linux系统中,最简单、易用的MySQL客户端软件是其自带的mysql命令工具。
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名注册、雅安服务器托管、营销软件、网站建设、柳河网站维护、网站推广。
登录到MySQL服务器
MySQL数据库默认管理员用户名为“root”,密码为空 。若要未设置密码的root用户登录本机的MySQL数据库,如下
在有密码的情况下,还应使用“-p”选项来进行密码校验
验证成功以后将会进入提示符为“mysql>”的数据库操作环境,用户可以输入各种操作语句对数据库进行管理。每一条MySQL操作语句以分号“;”表示结束,输入时可以不区分大小写,但习惯上将MySQL语句的关键字部分大写。
修改数据库密码
方法1:修改mysql库中user表中的信息
方法2:在Linux命令行环境中执行,使用mysqladmin工具来设置密码
2.查看数据库结构
(1)查看当前服务器中所有的数据库
(2)查看当前使用的数据库中所包含的表
MySQL数据库的数据库文件存放在/usr/local/mysql/data目录下,每个数据库对应一个子目录,用于存储数据表文件。每个数据表对应为三个文件,后缀名分别为“.frm”、“.myd”、和“.myi”。
(3)查看表的结构
DESCRIBE语句:用于显示表的结构,即组成表的各字段(列)的信息。需要指定“库名.表名”作为参数;若只指定表名参数,则需先通过USE语句切换到目标库。
3.创建及删除库和表
(1)创建新的库
CREATE DATABASE 数据库名称
(2)创建新的表
CREATE TABLE 表名 (字段1名称 类型,字段2名称 类型,...,PRIMARY KEY(主键名))
(3)删除一个数据表
DROP TABLE语句:用于删除库中的表,需要指定“库名.表名”作为参数;若只指定表名参数,则需先通过执行"USE"语句切换到目标库.
(4)删除一个数据库
DROP DATABASE语句:用于删除指定的库,需要指定库名作为参数.
4.管理表中的数据记录
(1)插入数据记录
INSERT INTO语句:用于向表中插入新的数据记录.
INSERT INTO 表名(字段1,字段2,...) VALUES(字段1的值, 字段2的值,..) ;
在插入新的数据记录时,如果这条记录完整包括表中所有字段的值,则插入语句中指定字段的部分可以省略.
(2)查询数据记录
SELECT语句:用于从指定的表中查找符合条件的数据记录.
SELECT 字段名1,字段名2,... FROM 表名 WHERE 条件表达式
(3)修改数据记录
UPDATE语句:用于修改,更新表中的数据记录
UPDATE 表名 SET 字段名1=字段值1[,字段名2=字段值2] WHERE 条件表达式
(4)删除数据记录
DELETE语句:用于删除表中指定的数据记录.
DELETE FROM 表名 WHERE 条件表达式
5.数据库的用户授权
(1)授予权限
GRANT语句:用来设置数据库用户的访问权限.当指定的用户名不存在是,GRANT语句将会创建新的用户,否则,GRANT语句用于修改用户信息.
GRANT 权限列表 ON 库名.表名 TO 用户名@来源地址 [IDENTIFIED BY '密码']
注意事项:
权限列表:用于列出授权使用的各种数据库操作,以逗号进行分隔,如"select,insert,update".使用"all"表示所有权限,可授权执行任何操作.
库名.表名:可以使用通配符" * ",代表任何.
用户名@来源地址:来源地址可以是域名,IP地址,还可以使用"%"通配符,表示某个区域网或网段内所有地址.
IDENTIFIED BY:在新建用户时,可省略,表示密码为空.
(2)查看权限
SHOW GRANTS语句:用来查看数据库用户的授权信息,通过FOR子句可指定查看的用户对象.
SHOW GRANTS FOR 用户名@来源地址
(3)撤销权限
REVOKE语句:用于撤销指定用户的数据库权限,撤销权限后的用户仍然可以连接到MySQL服务器,但将被禁止执行对应的数据库操作.
REVOKE 权限列表 ON 数据库名.表名 FROM 用户名@来源地址
6.数据库的备份与恢复
(1)备份数据库
方法1:可直接备份目录/usr/local/mysql/data
方法2: 使用专门备份工具mysqldump
导出指定数据库中的部分表: mysqldump [选项] 库名 [表名1] [表名2] ... > /备份路径/备份文件名
导出一个或多个完整的库: mysqldump [选项] - - databases 库名1 [库名2] ... > /备份路径/备份文件名
备份MySQL服务器中所有的库: mysqldump [选项] - -all-databases > /备份路径/备份文件名
(2)恢复数据库
mysql [选项] [库名] [表名] < /备份路径/备份文件名
当备份文件中只包含表的备份,而不包括创建库的语句是,则执行导入操作时必须指定库名,且目标库必须存在.
若备份文件中已经包括完整的库信息,则执行导入操作时无须指定库名.