MySQL数据库管理

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介:

1.3 搭建MYSQL数据库服务器并设置数据库管理员本机登录的


密码为123456

a 购买服务器(存储   CPU   内存) DELL   HP   联想

b 安装操作系统RHEL7.2

c 安装提供数据库服务的软件包(mysql)

# rpm -qa  | grep -i mariadb

# rpm -e --nodeps  mariadb-libs

# rpm -qa  | grep -i mariadb

#rm -rf  /etc/my.cnf

#yum -y  install perl-Data-Dumper  perl-JSON

# tar  -xvf   xxxx.tar

# rm -rf mysql-community-server-minimal-5.7.17-


1.el7.x86_64.rpm

#rpm -Uvh mysql-community-*.rpm

#rpm  -qa  | grep -i  mysql

#systemctl start mysqld

#systemctl status mysqld

#systemctl enable mysqld


服务名 mysqld

进程名 mysqld

进程的所有者/组   mysql/mysql

数据传输协议 tcp

端口号 3306

主配置文件  /etc/my.cnf

数据库目录  /var/lib/mysql

日志文件  /var/log/mysqld.log


客户端访问数据库服务器(命令行  图形工具)

*没有授权时,只允许数据库管理员root用户从本机访问

#mysql  -hlocalhost    -uroot   -p密码


[root@localhost ~]# grep -i "password" 


/var/log/mysqld.log 

2017-06-19T02:07:11.746572Z 1 [Note] A temporary 


password is generated for root@localhost: *?F(sfa;M3jy

[root@localhost ~]# 

[root@localhost ~]# mysql -hlocalhost -uroot  -p"*?F


(sfa;M3jy"

mysql> set global validate_password_policy=0; 

mysql> set global validate_password_length=6; 

mysql>  alter  user   root@"localhost"  identified by 


"123456";

mysql>quit


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


p123456

mysql> show  databases;

mysql>quit


vim /etc/my.cnf

[mysqld]

validate_password_policy=0

validate_password_length=6

:wq

# systemctl  restart mysqld

#mysql -hlocalhost  -uroot  -p123456

mysql>


数据库服务通常和网站服务一起使用。LAMP   LNMP

购物网站  游戏网站  论坛网站   金融网站   php  java  html css


数据库存储那些数据?注册帐号和密码

                                   购物信息

                                   储蓄信息

                                   帖子内容


1.4 数据库服务的基本使用

把数据存储到数据库服务器上的过程?

1  连接数据库服务器

mysql   -hlocalhost   -uroot   -p123456

2  创建新库 (文件夹)

3 创建表(文件)  

4 向表中插入记录

5  查看记录

6 断开连接


SQL命令使用规则?

每条命令必须以;结尾

命令不区分字母大小写

\c  结束命令



管理库的相关命令

show  databases;

create   database  库名;

select  database();

use   库名;

show  tables;

drop    database  库名;


管理表的相关命令

create   table   表名(字段名  类型(宽度),字段名  类型(宽


度));


mysql> create table regtab(name  char(10),password  


char(6));


desc   表名;

desc regtab;



帐号名    密码 

plj          123456  记录

jim         654331

tom       111199


insert   into  regtab   values("plj","123456"),


("jim","654321"),("tom","111199");


select   *  from  表名

select  * from regtab;


delete from 表名;

delete from regtab;


drop table  表名;

drop table  regtab;


表名和库名的命名规则?

具有唯一

区分字母大小写

使用数字  字母  _  命名  、不允许是纯数字

不允许使用特殊符号 和 命令关键字

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

mysql数据类型

字符类型   姓名  家庭地址   籍贯

char      255   定长

varchar  65532  变长


大文本类型

text

blob


create  database  studb;

use  studb;

create  table  t1(

name   char(10),

homeaddr   varchar(50)

);


insert into  t1   values("lucy","beijing");

select  *  from t1;


create  table  t2(image  blob,name   text);

    t1            t2 

name        name

char(10)     varchar(10)

a                   abc

 

数值类型 : 年龄  成绩   身高  体重  工资

11           12.23        

+11       -19.23

-12


整型   (根据存储数字的范围又 划分为如下类型)   

                               有符号           无符号    

tinyint                   -128~127     0-255

smallint

MEDIUMINT

int

bigint


create  table   t5(name  char(10) ,age  tinyint   


unsigned);


create  table   t6(name  char(10) ,age  tinyint ,level  


tinyint);


create  table   t7(name  char(10) ,age  tinyint  


unsigned,level  tinyint);


insert into   t7  values("jim",-11,101);



数值类型的宽度 是显示宽度,不能够控制给字段赋值,字段值的


大小由类型决定。


create  table  t8(name  char(3),level  int(3));

insert  into  t8    values("lucy",10224);


create table   t12 (id  int(2) zerofill,level  int  zerofill);

insert  into t12  values(9,7);



浮点型   (能存储带小数点的数) 19.23    21.75

float    

double


整数.小数

1023.88

xxx.xx 

999.99

-999.99

float(5,2)


create  table  t13 (name char(10),age  tinyint(2) 


unsigned,pay  float(7,2));


insert into t13 values("bob",21,18800.23);

insert into t13 values("tom",29,118800.23);

+++++++++++++++++++++++++++++++

日期时间类型   注册时间  上课时间   开会时间  生日   入职

年 year   YYYY    2017

日期date   YYYYMMDD   20170619

时间time   HHMMSS       160258

日期时间类型YYYYMMDDHHMMSS   20170619160258

datetime

timestamp


create  table  t14 (

name char(10),

age  tinyint(2) unsigned,

pay  float(7,2),

s_year   year,

birthday  date,

up_class   time,

meetting   datetime

);


insert into  t14  values


("bob",21,18800,1990,20170818,083000,20170707204


523);


使用时间函数给日期时间类型字段赋值

now()

year()

date()

month()

day()

time()


insert into  t14  values("lilei",21,18800,year(now


()),date(now()),time(20150718231458),now());


insert into  t14  values("hanmm",21,18800,now(),now


(),now(),now());


使用2位数字给year字段赋值,要遵循如下规律?

01-69   20XX

70-99   19XX

00         0000

100       报错


insert into  t14  values("lee",21,18800,69,now(),now


(),now());



datetime与timestamp  的区别?


create  table   t15(

meetting  datetime,

partty       timestamp

);


insert into  t15  values(now(),now());

insert into  t15(meetting)  values(20171020091828);

insert into  t15(partty)  values(20191020091828);

select  * from t15;


+++++++++++++++++++++++++

枚举类型   性别   专业   科目  爱好

(字段值只能在列举的范围内选择)

enum(值列表)  单选

set (值列表)      多选


create  table  t16 (

name char(10),

age  tinyint(2) unsigned,

sex    enum("boy","girl","no"),

likes  set("it","book","film","game")

);


insert into  t16  values("bob",21,"boy","it,game");

insert into  t16  values("jim",21,"no","music,game");

insert into  t16  values("jerry",21,2,"it,game")


mysql> desc mysql.user;

mysql> desc mysql.tables_priv;



字段约束条件:功能限制如何给字段赋值

Null  字段是否允许赋null值   空  默认允许赋null值

Key   索引

Default   字段的默认值,默认值的值是null

                不给字段赋值值使用默认值给字段赋值

               default   值


Extra   额外设置(自动增长)


create  table  t17 (

name char(10)   not  null ,

age  tinyint(2) unsigned  default  22 ,

sex    enum("boy","girl","no") not  null  default "boy",

likes  set("it","book","film","game")  default "it,book"

);


insert into  t17(name) values("bob");

insert into  t17  values("jim",29,"no","film,game");

insert into  t17  values("",NULL,"boy",NULL);

insert into  t17  values("NULL",NULL,"boy",NULL);

insert into  t17  values(null,NULL,"boy",NULL);


在ip地址是 192.168.4.101上部署数据库服务并设置数据库管理员的密码是abc123  创建studb库 创建存储学生信息的表stuinfo






     本文转自hj_1314wgn 51CTO博客,原文链接:http://blog.51cto.com/13513556/2052938,如需转载请自行联系原作者



相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
16天前
|
安全 关系型数据库 MySQL
《MySQL 简易速速上手小册》第4章:数据安全性管理(2024 最新版)
《MySQL 简易速速上手小册》第4章:数据安全性管理(2024 最新版)
33 3
|
1月前
|
存储 关系型数据库 MySQL
轻松入门MySQL:优化进销存管理,掌握MySQL索引,提升系统效率(11)
轻松入门MySQL:优化进销存管理,掌握MySQL索引,提升系统效率(11)
|
1月前
|
SQL 存储 关系型数据库
轻松入门MySQL:简明教程解析数据存储与管理(1)
轻松入门MySQL:简明教程解析数据存储与管理(1)
|
1月前
|
存储 Java 关系型数据库
社区医院管理服务系统【GUI/Swing+MySQL】(Java课设)
社区医院管理服务系统【GUI/Swing+MySQL】(Java课设)
25 1
|
2月前
|
关系型数据库 MySQL 数据库连接
连接和管理RDS
连接和管理RDS
30 2
|
12天前
|
运维 监控 安全
云HIS医疗管理系统源码——技术栈【SpringBoot+Angular+MySQL+MyBatis】
云HIS系统采用主流成熟技术,软件结构简洁、代码规范易阅读,SaaS应用,全浏览器访问前后端分离,多服务协同,服务可拆分,功能易扩展;支持多样化灵活配置,提取大量公共参数,无需修改代码即可满足不同客户需求;服务组织合理,功能高内聚,服务间通信简练。
27 4
|
1月前
|
SQL 关系型数据库 MySQL
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
轻松入门MySQL:深入学习数据库表管理,创建、修改、约束、建议与性能优化(3)
|
4月前
|
关系型数据库 MySQL 数据库
深入了解MySQL数据库管理与应用
深入了解MySQL数据库管理与应用
168 0
|
5天前
|
关系型数据库 MySQL 数据库
【MySQL】:数据库事务管理
【MySQL】:数据库事务管理
18 0
|
7天前
|
安全 关系型数据库 MySQL