mysql数据库
数据库可以在硬盘以及内存中存储数据
数据库本质也是通过文件来存储数据,数据库的概念就是系统的管理存储数据的文件
数据库介绍
数据库服务器端:存放数据库的主机集群
数据库客户端:可以连接数据库的任意客户端
数据库管理员:DBA
socket套接字的c/s架构应用
数据库基本概念:
库:多表构建一个数据库 本质就是文件夹
表:多条数据构建一张表 本质就是文件
记录:存放一条条数据 ,本质就是文件中一条条数据记录
(字段)id ,name ,age,gender...一个老师的数据 =>>一条数据记录
数据库分类:
关系型数据库: 1.有表的概念
2.以表中一条条记录存储数据
mysql oracle sqlserver access db2
非关系型数据库1.没有表的概念
2.通过key-value键值对方式存储数据
MongoDB Redis memcache
数据库安装 :
安装 server端与client端
如何启动 server? 如何通过client连接server
数据库启动与连接:
1.前往数据库安装路径,bin文件夹下,cmd执行mysqld 启动服务器端
2.前往数据库安装路径,bin文件夹下,cmd执行mysql 启动客户端连接服务器端
掌握:将mysql服务器添加到系统服务,在系统服务中启动mtsql,命令:mysql--install
连接数据库: mysql -hlocalhost -P3306 -uroot -p P3306数据库默认端口号 -p密码
通过最高权限进入数据库,要采用root用户进入,连入本地数据库:mysql -uroot -p
select version(); 查看mysql版本
select user();查看当前用户
show databases; 当前用户可以操作的所有数据库
密码操作:
知道旧密码 修改密码: mysqladmin -uroot -p旧密码 password"新密码"
不知道旧密码修改密码
1.绕过授权表启动服务(安全认证的服务停止):mysqld --skip-grant-tables;
2.以任意密码登录root用户: mysql -uroot -p任意
3.更新密码: update mysql.user password=password("新密码") where user=root and host="localhost"
4.刷新权限:flush privileges;
统一字符编码:
查看数据库配置信息:s >>>>>统一编码>>>>>防止乱码(读取不方便,数据丢失)
1.在mysql安装根目录下:创建my.ini (my.cnf) (命令:type nul>文件名.文件后缀)
2.配置信息
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
数据库的基本操作:
1.增,创建数据库
create
采用默认编码集; create database db1; #db1为数据库名
自定义编码集: create database db1 charset="gbk";
2查看,查看数据库全部信息
纵观所有数据库:show databases;
详细信息:show create database db1;
3.改,修改数据库编码集:
alter database db1 charset="utf8";
4.删,移除数据库
drop database db1;
表的基本操作:
前提:在具体的某个库下创建表
进入指定数据库 : use db1
确定或者显示当前使用的数据库:select database(); 查看是否是db1
1,增,创建表(字段1 类型,.....,字段n 类型)
create table t1(name char ,age int);
2查看表信息
纵观所有数据库:show tables;
详细信息: show create table t1;
表字段结构信息:describe t2; 可简写成desc t2;
3.改
alter table t2 modify name char(20); 修改表t2下面的name的 char属性改为20
alter table t2 rename t1; 将表t2的名字改为t1
alter table t1 change name usr char(16); 修改表t1的字段名把name 改为了usr 且长度为16
4.删,移除表
drop table t1;
字段的基本操作:
前提:知道具体操作的是哪张表
1.增,添加字段 insert into
insert into db1.t1 (usr, age) values ("aa",18),("bb",8);
2.查 select * from t1; 从t1中查看所有的数据
3.改 update t1 set age=28 where name="aa"; 将aa的年龄改为28
4.删
delete from t1 where age >8; 删除age大于8的数据