开发者社区> 技术小胖子> 正文

MySQL数据库管理

简介:
+关注继续查看

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,如需转载请自行联系原作者



版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Mysql数据库基础第四章DDL(数据定义语言):库表的管理、数据类型与约束条件
# 1.DDL语言基本概述 DDL:数据定义语言 主要包括以下几部分内容: - 库的管理 - 表的管理 - 数据类型 - 约束 下面我们先介绍库的管理
63 0
开心档-软件开发入门之MySQL 管理
本文主要讲解在 Windows 系统下,打开命令窗口(cmd),进入 MySQL 安装目录的 bin 目录。
24 0
MySQL表管理
| int | 整型 | | float| 单精度浮点 4字节32位| | double| 双精度浮点 8字节64位| | varchar| 可变长度的字符类型| | text| 文本| | decimal (5,2)| 5个有效长度数字,小数点后面有2位| | image| 图片| | char| 固定长度的字符类型|
56 0
MySQL数据库系列(三)------基本管理操作(Linux版)
数据库–>数据表–>行(记录):用来描述一个对象的信息 数据库–>数据表–>列(字段):用来描述对象的一个属性
18 0
【走进RDS】之MySQL内存分配与管理(上篇)
MySQL的内存分配、使用、管理的模块较多,总体上分为上中下三篇介绍:上篇文章主要介绍InnoDB层和SQL层内存分配管理器;中篇介绍InnoDB的内存结构和使用特点;下篇介绍内存使用限制。本篇为上篇,代码版本主要基于8.0.25。
189 0
软件开发入门教程网之 MySQL 管理 MySQL ALTER命令 MySQL 复制表 MySQL 连接 MySQL 创建数据库 MySQL 创建数据表 MySQL 数据类型 MySQL 导出数据 M
MySQL 表中使用INSERT INTOSQL语句来插入数据。 你可以通过 mysql> 命令提示窗口中向数据表中插入数据,或者通过PHP脚本来插入数据。 ​​语法​​
38 0
校园点餐系统:点餐、食堂管理、商户管理和菜品管理(Java和MySQL)
校园点餐系统:点餐、食堂管理、商户管理和菜品管理(Java和MySQL)
90 0
MySQL管理语句
引入 上期我们介绍了MySQL以及其的运行机制。本期开始我们将针对MySQL的使用进行简要地讲解。 先从基本管理开始
12 0
删库跑路?不可回滚?MySQL创建和管理表,修改清空表,MySQL8新特性DDL原子化,完整详细可收藏
删库跑路?不可回滚?MySQL创建和管理表,修改清空表,MySQL8新特性DDL原子化,完整详细可收藏
82 0
MySQL内存分配与管理(1)
MySQL的内存分配、使用、管理的模块较多,本篇文章主要针对InnoDB的内存管理、SQL层内存分配管理器MEM_ROOT和8028内存限制的新特性进行分析,同时对现阶段存在的部分问题和优化方案进行简单的描述。代码版本主要基于8025,第四部分内存限制新特性基于8028。一、InnoDB基础内存申请1.1 ut_allocator在非UNIV_PFS_MEMORY模式下,UT_NEW等都是调用原始
50 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载