linux下关系型数据库解释及mysql基本命令详解
admin
2023-06-10 01:42:26
0次

linux下关系型数据库解释及mysql基本命令详解

1.RDBMS:关系型数据库,如下功能:

 数据库创建、删除、修改

 创建表、删除表、修改表

 索引的创建、删除

 用户和权限创建、修改、删除

 数据新增、删除、修改

 查询

2.myslq属于关系型数据库,数据引擎命令如下:命令不区分大小写

DML:Data Manapulate Language: 数据操作语言

  INSERT, REPLACE, UPDATE, DELETE

DDL:Data Defination Lanuage: 数据定义语言

  CREATE, ALTER, DROP

DCL:Data Control Language: 数据控制语言

  GRANT, REVOKE

SELECT:查询命令

3.mysql客户端登入命令:

  选项: -u: 用户名,默认为root@localhost或root@127.0.0.1

          用户名格式:USERNAME@HOST

       -p:用户的密码,默认为空

       -h:mysql服务器

  例如:在mysql服务器中,本地登入服务器命令,以下两种命令功能一样:

     3.1.mysql

     3.2.mysql -u root -p -h localhost

  mysql客户端分为交互式和批处理模式

     交互式模式又分为客户端和服务器端命令类别

      客户端命令如:quit(或\q),可输入help或\h查询客户端命令

      服务器端命令:必须使用语句结束符,默认为分号;如SHOW DATABASES;

4.mysql名称解释;

 4.1.mysqld服务侦听在3306/tcp端口,属主属组均为mysql,数据存放在/var/lib/mysql/

 4.2.关系数据库对象:库,表,索引,视图,约束,存储过程,存储函数,触发器,游标,用户,权限,事务

 4.3.表:由多个字段field或列column和多个行row组成

 4.4.字段:由字段名称,数据类型和类型修饰(限制)组成

 4.5.数据类型分为字符,数值,日期时间,内置等组成

   字符:CHAR(n),VARCHAR(n),BINARY(n),VARBINARY(n),TEXT(n),BLOB(n)

           CHAR(n):    字符  ,不区分大小写

           VARCHAR(n): 可变化字符 ,不区分大小写

           BINARY(n):  二进制字符 ,区分大小写

           VARBINARY(n):  可变化二进制字符,区分大小写

           TEXT(n):大对象数据,不区分大小写

           BLOB(n):大对象二进制数据,区分大小写

           注意:n代表字符长度

   数值:精确数值和近似数值

      精确数值:代表有×××和十进制

         整型:TINYINT,SMALLINT,MEDIUMINT,INT,BIGINT

            TINYINT:1个字节

            SMALLINT:2个字节

            MEDIUMINT:3个字节

            INT:4个字节

            BIGINT:8个字节

             修饰符:UNSIGNED,无符号,只有0或正整数

             不为空:NOT NULL

         十进制:DECIMAL

     近似数值:代表有浮点型,FLOAT和DOUBLE

   日期时间:DATE,TIME,DATETIME,STAMP

   内置:  ENUM,SET

5.创建数据库

  格式:

   CREATE DATABASE 数据库名称; 

   CREATE DATABASE [IF NOT EXISTS] 数据库名称;

  例如:创建数据库mydb

    CREATE DATABASE mydb;  #如果数据库存在,将会报错,可用下条语句

    CREATE DATABASE IF NOT EXISTS mydb; #如果数据库存在,将不会报错

    查看刚创建的数据库

     SHOW DATABASES;

linux下关系型数据库解释及mysql基本命令详解

6.删除数据库

    格式:DROP DATABASE [IF EXISTS] 数据库名称;

   例如:删除数据库mydb

    DROP DATABASE mydb;

7.创建表

  格式:CREATE TABLE 表名(字段1,字段2,...); 需用USE 数据库名  #切换默认数据库

     CREATE TABLE 数据库存.表名(字段1,字段2,...);

例如:创建表students

USE mydb;   #切换数据库mydb为当前默认数据库

CREATE TABLE students(Name CHAR(15) NOT NULL,Age TINYINT UNSIGNED,Gender CHAR(1) NOT NULL);          查看库中的表:SHOW TABLES [FROM 数据库名称];默认显示当前数据

linux下关系型数据库解释及mysql基本命令详解

查看表的结构:DESC 表名;

        DESC students;

linux下关系型数据库解释及mysql基本命令详解

        

8.删除表:DROP TABLE 表名;

9.修改表:ALTER TABLE 表名 

         MODIFY:保留字段名称,修改其他属性

         CHANGE:连字段都修改

         ADD:添加字段

         DROP:删除字段

例如:对数据库mydb中表students添加course字段

ALTER TABLE mydb.students ADD course VARCHAR(100);

linux下关系型数据库解释及mysql基本命令详解

 将course字段名称修改成Courses

ALTER TABLE students CHANGE course Courses VARCHAR(100) AFTER Name;

  DESC studens;

linux下关系型数据库解释及mysql基本命令详解


10.DML:数据操作命令:

 INSERT INTO 表名 (字段1,字段2,...) VALUES|VALUE ('字符串值', 数值,...);

 INSERT INTO 表名 (字段1,字段2,...) VALUES|VALUE ('字符串1', 数值1,...),('字符串2',数值 2,...);

 例如:插入Name字段为Willow和Amy及其Gender字段相关属性内容

  INSERT INTO students (Name,Gender) VALUE ('Willow','M'),('Amy','F');

  SELECT * FROM students;

linux下关系型数据库解释及mysql基本命令详解


 如果不指定字段,将对所有字段赋值,如增加名字为Rob及其所有属性

  INSERT INTO students VALUE ('Rob','CCNP',26,'M');

  SELECT * FROM students;

 linux下关系型数据库解释及mysql基本命令详解

UPDATE 表名 SET 字段=值 [WHERE 条件]; 

 例如:修改Name为willow用户的Courses字段为RHCA; 

 update students SET Courses='RHCA' WHERE Name='Willow';

linux下关系型数据库解释及mysql基本命令详解

DELETE FROM 表名 WHERE 条件;

 例如:删除名字为Amy的用户所有数据

 DELETE FROM students WHERE Name='Amy';

 SELECT * FROM students;

linux下关系型数据库解释及mysql基本命令详解

选择:SELECT 字段 FROM 表名 WHERE 条件;

  *: 所有字段

 WHERE:没有条件表示显示所有行;

例如:选择查看名字为Willow,并且只查看Name和Courses两个字段的内容

 SELECT Name,Courses FROM students Where Name='Willow';

 linux下关系型数据库解释及mysql基本命令详解

11.创建用户:

CREATE USER '用户名'@'HOST' [IDENTIFIED BY '密码'];

DROP USER '用户名'@'HOST';

 HOST:表示有IP,HOSTNAME,NETWORK,通配符

    _:匹配任意单个字符, 172.16.0._

    %:匹配任意字符;

user1@'%'代表用户user1用户在所有主机上登入

12.DCL:数据控制命令

 GRANT 权限1,权限2,... ON 数据库名.表名 TO '用户名'@'HOST' [IDENTIFIED BY '密码'];

 REVOKE pri1,pri2,... ON 数据库名.表名 FROM '用户名'@'HOST';

 查看用户的授权:SHOW GRANTS FOR '用户名'@'HOST';

          ALL PRIVILEGES:代表所有权限的意思

例如:创建用户willow在所有主机可登入到mysql服务器中的mydb数据库

CREATE USER 'willow'@'%' IDENTIFIED BY 'redhat';

SHOW GRANTS FOR 'willow'@'%';

linux下关系型数据库解释及mysql基本命令详解授权willow用户对mydb数据中所有表拥有所有权限

linux下关系型数据库解释及mysql基本命令详解

13.为用户设定密码:

 13.1.mysql>SET PASSWORD FOR '用户名'@'HOST'=PASSWORD('密码');

    mysql> FLUSH PRIVILEGES ; #刷新让mysql数据库重读授权表

  例如:为root@localhost用户设定密码为redhat

  SET PASSWORD FOR 'root'@'localhost'=PASSWORD('redhat');


linux下关系型数据库解释及mysql基本命令详解

 13.2.# mysqladmin -u用户名 -hHOST -p password '密码' #bash下命令设定密码

   

 13.3.mysql> UPDATE user SET Password=PASSWORD('密码') WHERE USER='root' AND            Host='127.0.0.1';

  例如:为root@127.0.0.1用户设定密码为redhat

 UPDATE user SET Password=PASSWORD('redhat') WHERE USER='root' AND Host='127.0.0.1';

 linux下关系型数据库解释及mysql基本命令详解    13.4.建立一个root用户拥有所有权限并且仅允许在1.1.1.0/24子网内连接mysql服务器

GRANT ALL PRIVILEGES ON *.* TO 'root'@'1.1.1.%' IDENTIFIED BY 'redhat';

FLUSH PRIVILEGES;

linux下关系型数据库解释及mysql基本命令详解

linux下关系型数据库解释及mysql基本命令详解


相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...