第十四章:MySQL数据库系统

本章讨论了MySQL关系数据库系统;介绍了 MySQL并指出了它的重要性;展示了如何在Linux机器上安装和运行MySQL;演示了如何使用MySQL在命令模式和批处理模式 下使用SQL脚本创建和管理数据库;说明了如何将MySQL与C编程相结合;演示了如何将MySQL与PHP集成,通过动态Web页面创建和管理数据库。

  • MySQL是一个关系数据库系统在关系数据库中,数据存储在表中。每个表由多个行和列组成。表中的数据相互关联。表也可能与其他表有关联。关系结构使得可在表上运行查询来检索信息并修改数据库中的数据。
  • MySQL是一个开源数据库管理系统,由服务器和客户机组成。在将客户机连接到服务器后,用户可向服务器输入SQL命令,以便创建数据库,删除数据库,存储、组织和检索数据库中的数据。MySQL有广泛的应用。除了提供标准的数据库系统服务外,MySQL 和PHP已成为大多数数据管理和在线商务网站的主干网。

安装MySQL

sudo apt-get install mysql-servermysqlsecureinstallation

  • 在Slackware 14.0或更早版本中,可通过以下步骤配置 MySQLo
    (1)设置my.cnf : MySQL在启动时加载一个名为my.cnf的配置文件。该文件要在首
    次设置MySQL时创建。在/etc目录中,有几个示例my.cnf文件,文件名分别是my-small. cnf. my-large.cnf等。选择所需的版本来创建my.cnf文件,如
    cp /etc/my-small.cnf /etc/my.cnf
    (2)安装所需数据库:MySQ L需要一个所需数据库集,用于用户识别等。要安装它们, 可使用mysql用户作为超级用户,并使用以下命令安装所需的初始数据库。
    mysql_install_db
    (3)设置所需的系统权限:该步骤确保mysql用户拥有mysql系统的所有权。
    chown -R inysql.mysql /var/lib/mysql
    (4)通过以下操作使Zetc/rc.d/rc.mysqld可执行:
    chmod 7S5 /etc/rc.d/rc.mysqld
    这将在后续系统引导上自动启动MySQL守护进程mysqldo

使用MySQL

显示数据库:SHOW DATABASES命令可显示MySQL中的当前数据库
新建数据库:CREATE DATABASE dbname #创建一个名为dbname的数据库,如果数据库已经存在,则可以使用IF NOT EXISTS子句对命令限定。
删除数据库:DROP DATABASE dbname #删除已存在的命名数据库,该命令可以用一个可选的IF EXISTS 子句限定。
选择数据库:USE dbname命令选择一个数据库
创建表:CREATE TABLE table_name 命令回在当前数据库中创建一个表;DESCRIBE 命令显示表格式和列属性。
删除表:DROP TABLE table_name #删除表

Mysql中的数据类型

  • 数值类型:INT:整数(4字节)TINYINT:(1字节)SMALLINT:(2字节)等。·FLOAT:浮动指针数。
    -字符串类型:CHAR(size):固定长度字符串,长度为1~255字符。VARCHAR(size):可变长度字符串,但不能使用任何空格。 TEXT:可变长度的字符串。
  • 日期和时间类型:DATE:日期格式为YYYYMM-DD。·TIME:以HHMMSS格式保存时间

-插入行:要在表中添加行,可使用INSERT命名,具有语法形式:
INSERTINTOtable nameVLAUES(columnValuel,columnValue2,....);

  • Mysql更新表
    我们使用UPDATE语句来更新表中的现有数据。也可以使用UPDATE语句来更改表中单个行,一组行或所有行的列值。
    下面说明了MySQL UPDATE语句的语法:
UPDATE [LOW_PRIORITY] [IGNORE] table_name 
SET 
    column_name1 = expr1,
    column_name2 = expr2,
    ...
WHERE
    condition;
SQL
  • 新建表:
create table 表名(
字段名1 字段类型,
字段名2 字段类型,
字段名3 字段类型
);
  • Mysql修改表
    基本语法:修改表指的是修改数据库中已经存在的数据表的结构。MySQL 使用 ALTER TABLE 语句修改表。常用的修改表的操作有修改表名、修改字段数据类型或字段名、增加和删除字段、修改字段的排列位置、更改表的存储引擎、删除表的外键约束等。
    常用的语法格式如下:
ALTER TABLE <表名> [修改选项]
修改选项的语法格式如下:
{ ADD COLUMN <列名> <类型>
| CHANGE COLUMN <旧列名> <新列名> <新列类型>
| ALTER COLUMN <列名> { SET DEFAULT <默认值> | DROP DEFAULT }
| MODIFY COLUMN <列名> <类型>
| DROP COLUMN <列名>
| RENAME TO <新表名> }

SQL结构化查询语言

  • 数据定义语言(DDL):用于定义和管理数据对象,包括数据库,数据表等。例如:CREATE,DROP,ALTER等。数据库 -> 数据表:对数据库或数据表的创建、删除、修改等操作
  • 数据操作语言(DML):用于操作数据库对象中所包含的数据。例如:INSERT,UPDATE,DELETE语句。对数据的 增、删、改这些操作,就是数据操作语言
  • 数据查询语言(DQL):用于查询数据库对象中所包含的数据,能够进行单表查询,连接查询,嵌套查询,以及集合查询等各种复杂程度不同的数据库查询,并将数据返回客户机中显示。
  • 数据控制语言(DCL):是用来管理数据库的语言,包括管理权限及数据更改。

实践:Ubuntu安装MySQL

mysql建立了哪些用户 mysql是建立在_mysql建立了哪些用户


mysql建立了哪些用户 mysql是建立在_MySQL_02


新建数据库

mysql建立了哪些用户 mysql是建立在_MySQL_03


mysql建立了哪些用户 mysql是建立在_MySQL_04