数据库-1-数据库的初识

mysql

mysql启动 (mysql的服务端)

service mariadb start 启动

service  mariadb stop停止

service mariadb retart重启

mysql服务端与数据库的关系 数据库与表的关系

一个数据库服务端可以管理很多数据库,管理的数据库在 /var/lib/mysql

数据库与表的关系:一个数据库包含数据库表,相当于文件夹包含文件

服务端与客户端的关系

mysqld程序 mysql服务端

mysql mysql客户端

通过客户端连接服务端,执行mysql -u root(用户名) -p 密码(mariadb没有密码)

mysql服务端的架构

第一层:连接层

1.接收新连接

2.校验用户的合法性 用户名、密码、ip地址(登录位置) mysql的端口是3306

3.创建线程为连接服务

第二层:server层

1.语法语义的检测

2.优化sql

3.执行sql

第三层:存储引擎

数据库管理系统如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。

存储引擎分为两种 InnoDB(支持事务,mariadb默认使用)/MyISAM(不支持事务,不保护线程安全)

数据库的操作

前提:登录数据库 mysql -u [用户名] -p [用户密码]

退出数据库 \q

1.创建数据库

create database [数据库名称]

2.查看数据库的属性

show databases; 查看所有数据库

show create database [名称];查看数据库的属性

3.使用数据库

进入想要进入的数据库下use [name]

4.删除数据库

drop database [name];//谨慎使用

5.修改数据库

alter  database [name] charset=gbk;

数据库表的操作

1.表结构相关的操作(表名称、类型这些)

创建数据表 create table [name](id varchar(20),name varchar(20));

删除数据表 drop table [name]

查看表结构  desc [表名称]

查看表的属性 show create table [表名称]

查看当前数据库下所有的数据表 show tables;

2.表内容相关的操作

增 insert into [表名称] values('[内容concent]','[内容]');

查  select * from [表名称]

3.alter命令

增加表字段  alter table [tablename] add (column datatype,column datatype...)

修改表字段  alter table [tablename] modify (column datatype,column datatype...)

删除表字段  alter table [tablename]  drop (column ) //谨慎使用,删除某一列的同时会把数据删掉

修改表名称  alter tabel [tablename] rename to [tablename]

 

  

  

存储引擎

1.MyISAM

三个文件都存储在数据库所对应的文件夹下

2.InnoDB

表数据部分文件存储在创建的数据库的文件下

db.opt 数据库属性,包含了字符集和校对规则

表数据存储在上级目录下的idata1的文件下

字符集

1.定义能够表示字符的范围

2.类型:Latin1(1字节)、utf8(4字节)、utf8mb4

如果在创建表时charsert为latin1,则插入数据最多以1个字节插入,当你插入中文时是不成功的

3.指定字符集

创建数据库 create database [数据库名称] charset=utf8;

创建数据库表 create table [表名称] charset=utf8;

校对规则

当前数据库默认的字符集和校对规则 

1.指定校对规则

创建数据库 create database [数据库名称] utf8_general_ci;

create database [数据库名称] collate utf8_bin;

create database [数据库名称]  collate latin1_swedish_ci;

 create database [数据库名称] collate latin1_bin;

创建数据库表 create table [表名称] utf8_general_ci;

create table [表名称] collate utf8_bin;

create table [表名称]  collate latin1_swedish_ci;

 create table [表名称] collate latin1_bin;

2.影响数据库是否对大小写敏感

_ci:不敏感  _bin:敏感

3.查找的时候排序

备份数据库

1.mysqldump命令进行备份(在命令行执行)

mariadb 端口号3306

mysqldump -u [用户] -P [端口] -p [密码] -B [数据库名称]

2.恢复原数据库

source [备份文件->路径]

同时备份多个数据库用空格隔开

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值