Linux基本的使用掌握
LINUX系统常用服务使用
+++++++++++++++++++++++
5K-6K
数据库管理 7 DBA 7000+
Linux安全与监控 6 IDC监控
集群与存储 5
++++++++++++++++++++++++
数据库管理:
搭建数据库服务器
管理数据库服务器
mysql数据类型
数据导入导出
管理表记录
用户授权与权限撤销
数据备份与恢复
mysql主从同步
数据读写分离
mysql集群
mysql优化
++++++++++++++++++++++
一、搭建数据库服务器
1.1 在IP地址是 192.168.4.11主机上部署数据库服务。

购买服务器: cpu 内存 硬盘(存储)
DELL HP 联想 华为

安装操作系统: Windows Unix Linux
Redhat7

安装提供数据库服务的软件包:
提供数据库服务的软件有那些?
关系型数据库服务软件(RDBMS):
Oracle MySQL DB2 SQL Server
按照规定的结果存储数据,并且数据之间可以做关联操作

非关系行数据库软件(NoSQL)
redis mongodb
key values

包的来源? 官网下载 系统安装光盘
封包类型? rpm 源码包
是否跨平台?
是否开源? 商业软件
开源软件 不等于 免费

mysql的特点?
mysql的发展史?
生产环境应用:LAMP LNMP
购物网站 游戏网站 论坛网站 金融网站

装包 MySQL
rpm -qa | grep -i mysql

修改配置文件
#ls /etc/my.cnf

启动服务
#systemctl start mysqld

查看服务运行状态
#systemctl status mysqld
#ps -C mysqld
#netstat -utnalp | grep :3306

grep password /var/log/mysqld.log

使用初始密码登录并重置登录密码
mysql -hlocalhost -uroot -p密码

使用密码验证策略永久生效。

名词? DB DBMS DBS

使用sql命令管理数据库:
sql命令使用规则?
sql命令的分类?

把数据存储到数据库服务器上的过程?
1 连接数据库服务器
客户端自己提供连接工具(图形 命令行)
mysql>

2 创建库 (文件夹)
数据库名的命名规则?

创建库 create database 库名;
查看已有库 show databases;
删除库 drop database 库名;
切换库 use 库名;
查看库里已有的表 show tables;
查看当前所在的库 select database();

3 建表 (文件)
create table 库名.表名(
字段名 类型(宽度) 约束条件,
字段名 类型(宽度) 约束条件,
...
....
);
create table gamedb.stu(
name char(10),
age int
);

查看表结构 desc 库名.表名;

插入表记录
insert into 库名.表名 values(值列表);
insert into gamedb.stu values("jim",21),("tom",29);

查看表记录
select * from 库名.表名;

删除表记录
delete from 库名.表名;

删除
drop table 库名.表名;
++++++++++++++++++++++++
vim /root/stuinfo.txt
字段
姓名 年龄 性别 班级
jim 21 boy nsd1709 记录
tom 21 boy nsd1709
jerry 21 boy nsd1709
+++++++++++++++++++++++++++++++++
mysql数据类型
支持的数据类型有那些?

数值类型 : 整型 、浮点型
根据存储数值的范围整型类型有分为:
tinyint smallint mediumint int bigint
unsigned 无符号

浮点型:根据存储数值的范围分为 单精度 双精度
单精度float(n,m)
双精度double(n,m)
n表示总位数
m表示小数位的位数

整数.小数
210.22

pay float(5,2)
xxx.xx
999.99
0.00
-999.99
++++++++++++++++++++++++++++++
字符类型: 定长 变长 大文本
char varchar blob/text

日期时间类型:
年 year YYYY 2017
日期 date YYYYMMDD 20171220
时间 time HHMMSS 155145
日期时间 :
datetime YYYYMMDDHHMMSS
timestamp YYYYMMDDHHMMSS

datetime与timestamp区别?
使用2位数字给year字段赋值的规律?

使用时间函数给日期时间类型的字段赋值。
now() year() month() day() date() time()

枚举类型:字段的值只能在列举的范围内选择
字段名 enum(值列表) 单选
字段名 set(值列表) 多选

设置字段约束条件:作用限制如何给字段赋值。
设置默认 和 不允许为null

+++++++++++++++++++++++++
修改表结构
mysql> alter table 表名 执行动作;

添加新字段
add 字段 类型( 宽度);
add 字段 类型( 宽度) 约束条件;
add 字段 类型( 宽度) 约束条件 first;
add 字段 类型( 宽度) 约束条件 after 字段名;

删除字段
drop 字段名;

修改字段类型
modify 字段 类型( 宽度) 约束条件;

修改字段名
change 源字段 新字段 类型( 宽度) 约束条件;

修改表名
alter table 源表名 rename 新表名;

+++++++++++++++++++++++++++++++
搭建mysql数据库服务器

数据库服务器的基本使用:服务器停止启动查看状态 库管理命令
表管理命令 把数据存储到数据库服务器上过程

mysql数据类型

设置字段约束

修改表结构
+++++++++++++++++++++++++++++