python 云计算 基础服务 数据库 mariadb

 

关系型数据库

采用关系模型,也就是二维表格模型,以行和列的形式存储数据,多行多列组成一张数据表,可以通过完整型约束条件对写入的数据进行规范,通过sql语句(结构化查询语句)对数据库及数据表进行增删改查的操作(类似于excel表)

非关系型数据库

采用键值对形式,不保证数据的 ACID(数据的四大特性  原子性   一致性   隔离性   持久性)特性。数据是以键值对的形式进行存储的,查询效率高  读写性能也很高

1--haha

关系型数据库      mysql   mariadb      oracle(海量数据)甲骨文

非关系型数据库     mongdb (海量数据)    redis

  数据库内部结构

结构化查询语句   sql

数据定义语言    DDL   常用命令   create    drop   alter

数据操作语言   DML   常用的命令   insert     delete    update

数据查询语言    DQL   常用命令  select

数据控制语言   DCL  常用命令   grant   revoke

server  192.168.2.10

[root@localhost ~]# yum -y install mariadb*

mariadb-server   

mariadb-client

主配置文件

[root@localhost ~]# vim /etc/my.cnf

datadir=/var/lib/mysql

[root@localhost ~]# netstat -anput | grep mysqld

tcp        0      0 0.0.0.0:3306            0.0.0.0:*               LISTEN      31277/mysqld  

数据库设置密码

1.命令设置

[root@localhost ~]# mysqladmin -u root password

New password:

Confirm new password:

2.进入数据库当中设置密码

[root@localhost ~]# mysql -uroot -p

Enter password:

MariaDB [(none)]> set password=password('123.com');

Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> SET PASSWORD=PASSWORD('123.com');

Query OK, 0 rows affected (0.00 sec)

数据库中的常用操作

数据库的创建

create   database   数据库名;

MariaDB [(none)]> create database one;

Query OK, 1 row affected (0.01 sec)

MariaDB [(none)]> show databases;

数据库切换

use   库名

MariaDB [(none)]> use one;

Database changed

数据库的删除

MariaDB [one]> use test;

Database changed

MariaDB [test]> drop database one;

Query OK, 0 rows affected (0.37 sec)

MariaDB [test]> show databases;

查看当前的用户访问信息

MariaDB [test]> show processlist;   

小练习  创建数据库   user和log  查看所有的已创建的数据库  切换到数据库user中  并查看当前的数据库是否是user     删除数据库log  并查看验证

数据表的操作   

先进入到数据库当中    创建表的结构   也就是每个行中存放的数据类型

create  table   表名  (

   字段一    数据类型  [完整约束条件],

   字段二    数据类型  [完整约束条件],

   字段三   数据类型  [完整约束条件],

);

列子:创建关于学生的信息表

字段          数据类型     数据类型char(字符串)(15)限制15个字    int(数字)

姓名          字符串

性别          字符串

联系方式     数值

MariaDB [user]> create table student_info (

    -> name char(15),

    -> sex char(1),

    -> phone_num int

    -> );

#查看数据库中的表

MariaDB [user]> show tables;

#查看当前的表结构    查看表有几个列

MariaDB [user]> desc student_info;

+-----------+----------+------+-----+---------+-------+

| Field      | Type     | Null | Key | Default | Extra |

+-----------+----------+------+-----+---------+-------+

| name      | char(15) | YES  |     | NULL    |          |

| sex         | char(1)    | YES    |        | NULL       |          |

| phone_num | int(11)  | YES  |     | NULL    |       |

+-----------+----------+------+-----+---------+-------+

#删除表

drop   table   表名;

MariaDB [user]> drop table student_info;

Query OK, 0 rows affected (0.01 sec)

练习  创建班级信息表

表名   class_info

字段

班级编号    class_id     数值  int

学生的数量     stu_num     数值  int

教师姓名    t_name     字符串(10)

MariaDB [user]> create table class_info (

    -> class_id int,

    -> stu_num int,

    -> t_name char(10)

    -> );

Query OK, 0 rows affected (0.00 sec)

MariaDB [user]> show tables;

+----------------+

| Tables_in_user |

+----------------+

| class_info     |

+----------------+

作业:

1.搭建httpd+https

2.创建一个aa库   在aa库中创建学习进度表1

创建学习进度表     

表名   study_info

学生姓名   name    字符串  (20)

已经学习过的    learnd   字符串 (30)

正在学习的    learning    字符串   (30)

未学习的      not_learn     字符串 (30)

分数             grade      数值   int

MariaDB [user]> use user

修改表结构

alter   table  表名    drop   字段名 ;  删除

alter   table  表名    add   字段名 ;  添加

alter   table   表名   modify    字段名;   修改字段的类型

alter   table   表名   change  旧字段名   新字段名;   修改字段名

MariaDB [user]> alter table class_info drop stu_num;   #删除字段

MariaDB [user]> alter table class_info add aa int;   #添加字段

MariaDB [user]> alter table class_info modify aa char(10);   #修改字段类型

MariaDB [user]> alter table class_info change aa bb char(10);

MariaDB [user]> create table student (

    -> id int,

    -> name char(10),

    -> age int,

    -> sex char(1),

    -> phone_num int

    -> );

Query OK, 0 rows affected (0.01 sec)

如何往表中插入数据

insert    into     表名    values (值1,值2。。。。)

MariaDB [user]> insert into student values (1,"one",18,"m",123456);

MariaDB [user]> insert into student values (2,"two",17,"w",123456);

MariaDB [user]> insert into student values (3,"three",17,"w",123456),(4,"four",20,'m',222222);

查看表中所有数据

select  * from  表名;

MariaDB [user]> select * from student;

+------+-------+------+------+-----------+

| id   | name  | age  | sex  | phone_num |

+------+-------+------+------+-----------+

|    1 | one   |   18 | m    |    123456 |

|    2 | two   |   17 | w    |    123456 |

|    3 | three |   17 | w    |    123456 |

|    4 | four  |   20 | m    |    222222 |

+------+-------+------+------+-----------+

给指定字段中插入数据

insert  into   表名(字段)   values(数据)

insert   into   表名(字段1,字段2)   values(数据1,数据2)

MariaDB [user]> insert into student(name) values("five");

查看数据表中指定字段的数据

select   字段1,字段2    from  表名

MariaDB [user]> select name from student;

MariaDB [user]> select id,name from student;

where  判断条件     查看满足条件的指定数据   =   !=   >  <

select   */字段1 ,字段2   from   表名   where    条件

查看男孩的学生信息

MariaDB [user]> select * from student where sex="m";

MariaDB [user]> select name,age from student where age>19;

修改数据表中的数据

update   表名   set   字段名=新值   [where   条件语句]

MariaDB [user]> update student set phone_num=666666 where name="three";

删除数据表中的数据

delete    from  表名  [where  条件语句]

 MariaDB [user]> delete from student where name="three";

删除所有的数据;

delete    from  表名;

库 增删查

create  database

drop    database

show  databases

use  

表  增删改查

create   table  。。。

drop   table

show  tables

desc

alter   table  。。。。

数据

insert   into  

delete

select

update  

数据库的备份:

常用的备份方式:

全量备份:对数据表中的所有数据进行备份   一般一周一次

增量备份:从最近一次备份的数据开始备份    一般一天一次

备份的方法:

物理备份:直接对数据表存储的目录和文件进行备份/var/lib/data  直接对data目录备份

逻辑备份: 对数据库执行的sql语句进行备份   二进制文件

热备份   在备份数据的时候可以正常读写数据  mysqlhotcopy  安装插件

温备份    在备份数据的时候只能读不能写  

冷备份    在备份数据的时候不能写也不能读   mysqldump

对于数据库的备份

mysqldump    用户  密码     要备份的库   >   文件名

[root@localhost ~]# mysqldump -uroot -p123.com user > /user.sql

对于表进行备份

mysqldump    用户  密码     要备份的库 表名   >   文件名

[root@localhost ~]# mysqldump -uroot -p123.com user class_info  > /class.sql

对于所有的数据进行备份

mysqldump    用户  密码  --all-databases  >  文件名

[root@localhost ~]# mysqldump -uroot -p123.com --all-databases > /all.sql

恢复数据

[root@localhost ~]# mysql -uroot -p123.com

MariaDB [(none)]> drop database user;

MariaDB [(none)]> create database user;

MariaDB [(none)]> use user;

MariaDB [user]> show tables;

[root@localhost ~]# mysql -uroot -p123.com user < /user.sql

[root@localhost ~]# mysql -uroot -p123.com

MariaDB [(none)]> use user;

MariaDB [user]> show tables;

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据库从删库到跑路

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值