MySQL的基本管理

 

信息呢就是数据
数据包括哪些:图片、视频 音频 文字 数字
网站:购物  游戏 论坛
/|\ 存在数据库里  LNMP LAMP PHP
数据库服务软件:(RDBMS关系型):Oracle SQL SERVER(微软,不可跨平台) ,       MySQL DB2
                              (非关系型NoSQL):mencached  Redis  MogoDB
软件从哪下:管网   系统安装光盘rhel7.4(2015)
开源软件(不等于免费)  商业软件  跨平台(Linux unix windows)
使用哪种软件建数据库好呢:MySQL -->php python java

概述

DB数据库:某种数据模型进行组织并存到存储器的数据集合

DBMS数据库管理系统:用来操纵和管理数据库的大型服务软件

DBS数据库系统:DB+DBMS,带有数据库并整合了数据库管理软件的计算机系统

特点

关系型数据库系统

支持Linux/Unix,WINDS等多种操作系统

使用C和C++编写,可移植性强

通过API支持Python/java/Perl/PHP等语言

典型应用环境

LAMP平台,与Apache HTTP Server组合

LNMP平台,与Nginx组合

官网下载:https://dev.mysql.com/downloads/mysql/

 

常见SQL操作指令

  1. DDL数据定义语言(create ,alter ,drop)
  2. DML数据操作语言(insert , update , delete)
  3. DCL数据控制语言(grant , revoke)
  4. DTL数据事物语言(commit, rollback , savepoint)

 

 

 


mysql(2下tab键会出现相关命令)

/varlib/mysql(不启服务为空)
首次启动(初始化)

1.先安装MySQL
2.启服务
3.初始密码在grep -i password /var/log/mysqld.log

mysql -hlocalhost[服务器] -uroot[用户] -p123456[密码]
alter user user() identified by "密码";先改初始密码才能操作
show variables like "%password%"; 查看密码策略


+------------------------------------------------------+-------+
| Variable_name                                        | Value |
+-------------------------------------------------------+-------+
| default_password_lifetime                         | 0     |
| disconnect_on_expired_password           | ON    |
| log_builtin_as_identified_by_password   | OFF   |
| mysql_native_password_proxy_users     | OFF   |
| old_passwords                                           | 0     |
| report_password                                        |       |
| sha256_password_proxy_users               | OFF   |
| validate_password_check_user_name     | OFF   |
| validate_password_dictionary_file              |       |
| validate_password_length                          | 6     |
| validate_password_mixed_case_count      | 1     |
| validate_password_number_count             | 1     |
| validate_password_policy                         | LOW   |
| validate_password_special_char_count    | 1     |
+-------------------------------------------------------+-------+
14 rows in set (0.00 sec)

[root@host50 ~]# locale
LANG=zh_CN.UTF-8  支持中文

 

  • 修改密码策略

> set global validate_password_policy=0; 
#验证密码策略(0长度,1长度/数字/大写/小写/和特殊字,2长度/数字/大写/小写/和特殊字/字典文件)
> set global validate_password_length=6;(临时)密码长度

]# vim /etc/my.cnf(永久修改)

[mysqld]
validate_password_policy=0   #密码验证策略
validate_password_length=6  #密码长度
character_set_server=utf8  #中文字符集

]# systemctl restart mysqld

mysql> show variables like "%character%";

-----------------------------------------------------------------------

  • 管理命令

desc 表名;                                           #查看表结构

select * from 表名;                              #查看表记录

drop  table 表名;                                  #删除表

insert into 表名 values(值列表);        #插入表记录

update  表名 set 字段=值;                   #修改表记录

delete from 表名;                                  #删除表记录

 

mysql> show databases;
 

操作指令不区分大小写(库名/表名、密码、变量值等除外)。
每条SQL指令以 ; 结束或分隔。
不支持 Tab 键自动补齐。
\c 可废弃当前编写错的操作指令。


select database();                                                                                   #查看当前所在库
create database nsd_1902;                                                                    #建库
use nsd_1902;                                                                                        #进库
create table nsd_1902.student(name char(10) , homeadd char(20));    #建表

show tables;                                                                                            #查看当前库的所有表

desc student;                                                                                          #查看表结构,表格形式展现
desc student\G                                                                                       #查看表结构,以列形式展现 

drop table nsd_1902.student;                                                                 #删表
delete  from nsd_1902.student;                                                              #删表记录

mysql> create table mysql.t1(
学号 char(10) not null,
姓名 varcahr(5) not null,
性别 enum("男","女") not null,
手机号 cahr(11) default "",
通信地址 varchar(64),
primary kry(学号)            #主键
) default charset=utf8;    #手工指定字符集,采用utf8

mysql> show create table mysql.student;

mysql>insert into mysql.t1 values 
->(1902,"Tom","男",12345678901,"深圳龙岗区"),
->(1903,"Kenji","男",12345678901,"深圳龙岗区");
插入两条记录
mysql>update mysql.t1 set 通信地址="中国";
mysql>select * from mysql.t1;

select user();                                                     #显示当前登陆用户

-------------------------------------------------------------------------------------------------------------
select * from 表名;
nsert into 表名 values(值列表);
update 表名 set 字段=值;
delete from 表名;

数据类型


1)数值:

  1. tinyint(微小整数255)
  2. smallint(小整数)
  3. mediumint(中整数)
  4. int(大整数)
  5. bigint(极大整数)
  6. float(单精度浮点)
  7. double(双精度浮点)
  8. decimal(对decimal(M,D),其中M为有效位数,D为小位数,M应大于D,占用M+2字节)
  9. unsigned(使用无符号存储范围)

 

2)字符:定长:char(字符数)最多255字符
变长varchar(字符数)超出字符数时无法写入

3)日期时间:datetime(1000~9999年)timestamp(1970~2038)date(20190101)
year(2019)[01~59(2001~2069)70~99(1970~1999)]      time(235959)
时间函数:

now()    当前系统日期时间 
year()           获取指定年份
day()            获取指定日期
sleep(N)          休眠N秒
curdate()        当前系统日期
curtime()        当前系统时刻
month()        获取指定月份
date()          获取指定日期
time()           获取指定时刻        

可配now()使用,例date(now());
使用select 输出函数结果:select date(20190506)或select date(now());


4)枚举类型
enum(值1,值2,值N)   #从给定值集合选择单个值
set(值1,值2,值N)    #从给定值集合中选择一个或多个值
mysql>create table t2(
->name varchar(4),
->gender enum("boy","girl"),
->likes set("book","film","music")
->);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值