ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

MySQL构建,基本管理,数据类型

2019-05-28 20:50:17  阅读:240  来源: 互联网

标签:set 表名 数据类型 构建 mysql MySQL validate password select


搭建数据库服务器
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(不启服务为空)
首次启动(初始化)

先安装MySQL
启服务
初始密码在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;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

操作指令不区分大小写(库名/表名、密码、变量值等除外)。
每条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)数值:

tinyint(微小整数255)
smallint(小整数)
mediumint(中整数)
int(大整数)
bigint(极大整数)
float(单精度浮点)
double(双精度浮点)
decimal(对decimal(M,D),其中M为有效位数,D为小位数,M应大于D,占用M+2字节)
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")
->);

标签:set,表名,数据类型,构建,mysql,MySQL,validate,password,select
来源: https://blog.csdn.net/tongzhuo1220/article/details/90646103

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有