Day1:数据库

数据库

基础知识

数据库 :存储数据的仓库,数据是有组织的进行存储

数据库管理系统 :操纵和管理数据库的大型软件

SQL 操作关系型数据库的编程语言,定义了一套操作关系型数据库的同意标准

常见数据库

Oracle :收费的大型数据库,Oracle 公司的产品

MYSQL :开源免费、中小型的数据库。2009SUN 公司被Oracle 收购后开始收费,但还是有免费的社区版本

SQLServer :MincroSoft 公司收费的中兴数据库。c#.net 等语言常使用。

PostgreSQL :开源免费的中小型数据库,被苹果公司大量使用并替换早期的MySQL数据库。 号称世界上最先进、最安全的开源数据库。

我们选择MySQL的原因:

1.开源、免费

2.功能足够应付web应用开发。

MySQL安装和启动

MySQL官网

  • 初始化initialization

  • 安装install

  • 启动startup

  • 重启reboot

    • 卸载:

      • 停止stop

      • 卸载uninstall

登录数据库:

bin 目录下执行:

mysql -u -root -p

解决root无密码登录不了的问题

以不检查权限的方式启动 先停止mysql服务

safe_MySQLd -skip -grant -tables
update MySQL.user set password
=PASSWORD('新密码') where User ='root'
flush privileges1

解决端口冲突问题:

netstat -ano|findstr 3306

(查询正在执行3306端口的程序,如果有 在任务栏找到对应程序结束任务就可以了)

推出数据库:

exit
quit

登录数据库

mysql [-h 127.0.0.1] [-P 3306] -u root -p
# 参数:
-h : MySQL服务所在的主机IP
-P : MySQL服务端口号, 默认3306
-u : MySQL数据库用户名
-p : MySQL数据库用户名对应的密码

将MySQL添加在服务

以管理员的方式启动 cmd (命令提示窗口),使用命令
进入到[mysql]\bin ,执行如下命令。

mysqld --install (服务名)
如:
mysqld --install Mysql

删除服务命令是:

mysqld --remove 服务名

添加环境变量

mysqlbin 目录地址添加到 系统环境变量 -->PATH

关系型数据库

概念 :建立在关系模型基础上,由多张相互连接的
二维表组成的数据库

数据模型

客户端连接数据库管理系统,数据库管理系统中有多个数据库,数据库中都有多张表

SQL通用语法

单行或者多行书写,以分号结束
2 可以使用空格或者缩进来增强语句的可读性
3 mysql数据库中,SQL语句不区分大小写,关键字建议使用大写
4 注释
            单行注释 # –
            多行注释, /* */

分类

  • DDL 数据定义语言,用来定义数据库对象(数据库,表,字段)

  • DML 数据操作语言,用来对数据表中的数据进行增删改

  • DQL 数据查询语言,用来查询数据库中表的记录

  • DCL 数据控制语言,用来创建数据库用户,控制数据库的访问权限

DDL 语句

数据库

  • 1 查看数据库
show databases; # 查看当前用户可操作的所有数据库
  • 2 创建新数据库
CREATE DATABASE [IF NOT EXISTS] 数据库
名字 [DEFAULT CHARSET utf8mb4];
# mysql8 中创建的数据库默认编码是'utf8mb4'
  • 3 选择数据库
use 数据库名;
# 选择数据库之后可以在其中创建数据库表
select database();
  • 4 删除数据库
drop database 数据库名;

DDL-- 表管理

查看表

show tables;
# 查看当前被选中的数据库中的所有表

数据表中包含若干列,每列需要明确列中存储的数据类型,如字符串、日期时间、证书、浮点数等等。

创建表

CREATE TABLE [IF NOT EXISTS] tab_name(
    col_name datatype [COMMENT '注释'],
    col_name datatype
)[CHARACTER set 编码格式];

查看表结构

describe 表名;
desc 表名;
show create table 表名;

删除表

drop table 表名;

用户管理

  1. 查看当前登录的用户
select user() [from dual]; 
# 查看当前登录的用户;

dual 虚拟表,为了让select语句完整

  1. 创建新用户
create user 用户名@'ip主机地址
192.168.31.34' identified by '密码';
  1. 修改密码
alter user 用户名@'ip主机地址'
identified by '密码' password expire
never;
# 修改密码之后不需要重新登录
  1. 查询用户信息
select user,host from mysql.user;
  1. 用新用户登录
mysql -u 用户名 [-h ip地址] -p
# 新创建的用户只有登录权限,需要使用管理员账户授权
  1. 为用户授权
show grants for 用户名@localhost; #查询用户的权限数据库名 . 表名 *.* 数据库名.*
grant all on kfm.carts to txsy@localhost;
# all 代表所有权限
# 授权的新用户需要重新登录才能使用新权限
# 任意ip可以访问
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'%';
update mysql.user set host='%' where user='txsy;
flush privileges;

all :所有权限
select :查询权限
insert :插入权限
update :更新权限

  1. 删除用户
drop user 用户名@'localhost';
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值