数据库安装和基本sql语句
数据库概念
文件作为数据进行存储,数据格式千差万别
将保存数据的地方统一起来
MYSQL---------》一款应用软件
用来帮你操作文件的
只要是基于网络通信,底层就是socket
服务端
--socket通信
--收发消息
--解析命令(sql语句)
客户端
--socket通信
--收发消息
--解析命令(sql语句)
DBA:数据库管理员
sql语句优化(耗时不一样)
****
RDBMS:数据库管理系统
关系型数据库
存储数据的时候,对于数据有条件限制
数据与数据之间有关联
通常都是以表格的方式存储
第一步需要创建表结构!
Oracle ,sqlite, db2, sql server,MYSQL,access
非关系型数据库
特点:数据存储方式k,v键值对的形式
redis,mongodb,memcache
文件夹(库)
文件(表) ----》表头:字段
数据/记录(表记录/表数据)
MYSQL
安装
客户端链接服务端
1.启动
服务端
mysqld
客户端
mysql -h 127.0.0.1 -P3306 -uroot -p
也支持简写
mysql -uroot -p
让你输入密码不用管,直接敲回车
sql语句第一条命令:
查看所有数据库
show databases; 是以;作为结束符号
注意:输入sql语句的时候,一定要以英文;结束
如果你输入的sql语句错了不想执行的话,可以在后面跟上\c取消执行
退出mysql
exit,quit
1.将mysql启动文件路径添加到环境变量
2.将mysqld制作成系统服务
查找
tasklist |findstr mysql
1.一定要先将mysqld杀死
taskkill /F /PID 33906 或者taskkill /f /im mysqld.exe 大小写都可以
2.mysqld --install 将mysqld服务端制作成系统服务(开机自启动)
3.设置密码
windows下的命令行windows>cmd
mysqladmin -uroot -p password 123
#第一次修改完密码之后,之后还需要修改
mysqladmin -uroot -p123 password 123456
#为了后续调试方便,这里把密码设置为空值
mysqladmin -uroot -p123 password '新密码'
4.破解密码
windows下面的命令行windows>cmd
1.先关闭服务端
2.以跳过用户密码认证模式重新启动服务端
mysqld --skip -grant-tables
3.以管理员身份登录
4.修改mysql库里面的user表 mysql>cmd
update mysql.user set password=password(123) #相当于全改,所以加限制
update mysql.user set password=password(123) where user=='root' and host=='localhost';
5.先关闭跳过验证的服务端,以正常模式启动服务端
6.输入用户名密码正常登录
5.解决编码问题
1.在MySQL根目录下新建一个my.ini的配置文件,在里面给i顶加上下面的配置即可设置编码问题
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
2.重新启动你的mysql,配置才会生效
## 基本sql语句 对数据的增删改查 sql书写错误,只要没加分号,可以加\c使前面的sql语句失效 * 针对文件夹的(库) ```python
# 增
create database db1 charset utf8;
# 改
alter database db1 charset gbk;
# 查
show databases;
show create database db1;
# 删
drop database db1;
``` * 针对文件的(表) 文件首先需要在文件夹下面,所以在操作文件之前,应该先确定操作的是哪个文件夹下面的文件 ```python
# 切换文件夹
use db1;
select database(); # 查看当前所在的库
# 增
create table t1(id int,name char); # 创建出来的可能是多个文件,解耦管理
# 改
alter table t1 modify name char(16);
# 查
show tables;
show create table t1; # 查看表的详细信息
describe t1; == desc t1; # 查看表结构
# 删
drop table t1;
``` * 针对(记录) ```python
# 增
insert into db1.t1 values (1,'egon'),(2,'kevin'),(3,'jason'); # into可加可不加,db1可以不指定,默认就是在当前库下
# 改
update db1.t1 set name='DSB' where id > 1;
update db1.t1 set name='DSB' where id = 2 or id = 3;
# 查
select id,name from db1.t1; # db1可不指定,默认当前库下
select * from t1;
# 删
delete from db1.t1 where id >3;
delete from db1.t1 where name='egon' # 这里注意如果少了一个引号,后面无论敲什么都没有用了需要将引号补全
``` ## 表操作 #### 存储引擎 文件格式有很多种,对应的软件也有很多种txt,pdf等 针对不同类型的文件,需要对应有不同的软件帮助我们去操作 ```python
# 查看所有的存储引擎
show engines; # 查看不同存储引擎存储表结构文件特点
create table t1(id int)engine=innodb;
create table t2(id int)engine=myisam;
create table t3(id int)engine=blackhole;
create table t4(id int)engine=memory; insert into t1 values(1);
insert into t2 values(1);
insert into t3 values(1);
insert into t4 values(1);
数据库安装和基本sql语句的更多相关文章
- MySQL数据库(一)—— 数据库介绍、MySQL安装、基础SQL语句
数据库介绍.MySQL安装.基础SQL语句 一.数据库介绍 1.什么是数据库 数据库即存储数据的仓库 2.为什么要用数据库 (1)用文件存储是和硬盘打交道,是IO操作,所以有效率问题 (2)管理不方便 ...
- SQL Server数据库性能优化之SQL语句篇【转】
SQL Server数据库性能优化之SQL语句篇http://www.blogjava.net/allen-zhe/archive/2010/07/23/326927.html 近期项目需要, 做了一 ...
- 创建数据库和表的SQL语句【转】
创建数据库和表的SQL语句 转至http://www.cnblogs.com/philanthr/archive/2011/08/09/2132398.html 创建数据库的SQL语句: 1 crea ...
- 如何找出MySQL数据库中的低效SQL语句
面对业务的迅猛发展,DBA的一项重要工作就是及时发现数据库中的低效SQL语句,有的可以立刻着手解决(比如缺少合适的索引),有的需要尽快反馈给开发人员进行修改. MySQL数据库有几个配置选项可以帮助我 ...
- Oracle数据库中,在SQL语句中连接字符串的方法是哪个?(选择1项)
Oracle数据库中,在SQL语句中连接字符串的方法是哪个?(选择1项) A.cat B.concat C.join D.+ 解答:B
- Python3:sqlalchemy对sybase数据库操作,非sql语句
Python3:sqlalchemy对sybase数据库操作,非sql语句 # python3 # author lizm # datetime 2018-02-01 10:00:00 # -*- c ...
- Python3:sqlalchemy对mysql数据库操作,非sql语句
Python3:sqlalchemy对mysql数据库操作,非sql语句 # python3 # author lizm # datetime 2018-02-01 10:00:00 # -*- co ...
- DBA 需要知道N种对数据库性能的监控SQL语句
--DBA 需要知道N种对数据库性能的监控SQL语句 -- IO问题的SQL内部分析 下面的DMV查询可以来检查当前所有的等待累积值. Select wait_type, waiting_tasks_ ...
- 【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建
数据库的创建和sql语句增删改查 1. 载入驱动. 2. 连接数据库. 3. 操作数据库. 创建表: create table person( _id integer primary key, nam ...
随机推荐
- Java编程Tips
原文: Java编程中"为了性能"尽量要做到的一些地方 作者: javatgo 最近的机器内存又爆满了,除了新增机器内存外,还应该好好review一下我们的代码,有很多代码编写过于 ...
- 对话|首席研究员童欣:从长远看,AR的应用范围远比VR广泛
童欣博士现任微软亚洲研究院网络图形组首席研究员.1993年毕业于浙江大学计算机系,获工学学士学位:1996年获浙江大学计算机系硕士学位:1999年获清华大学计算机系博士学位,同年加入微软亚洲研究院. ...
- Python——7列表生成式
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...
- 什么是HDFS?算了,告诉你也不懂。
前言 只有光头才能变强. 文本已收录至我的GitHub精选文章,欢迎Star:https://github.com/ZhongFuCheng3y/3y 上一篇已经讲解了「大数据入门」的相关基础概念和知 ...
- C语言入门理解指针
本文章为本人原创,适合于刚入坑C语言,对于指针的定义和用法模糊不清的同学,如有不正,请各位指出. 从根本来说,指针变量也是变量,只是int变成了int *,以此类推.只不过指针变量里面放的内容是普通变 ...
- 用mpvue写个玩意儿玩玩
下周公司要搞黑客马拉松了,组里可能会做个小程序.然后看到了mpvue感觉还不错,于是就打算试试水.用vue写小程序听上去美滋滋.那么先开始吧! 全局安装 vue-cli $ npm install - ...
- vijos 1011 清帝之惑之顺治
背景 顺治帝福临,是清朝入关后的第一位皇帝.他是皇太极的第九子,生于崇德三年(1638)崇德八年八月二ten+six日在沈阳即位,改元顺治,在位18年.卒于顺治十八年(1661),终24岁. 顺治即位 ...
- 内存:你跑慢点行不行?CPU:跑慢点你养我吗?内存:我不管!(内附超全思维导图)
主存(RAM) 是一件非常重要的资源,必须要认真对待内存.虽然目前大多数内存的增长速度要比 IBM 7094 要快的多,但是,程序大小的增长要比内存的增长还快很多.不管存储器有多大,程序大小的增长速度 ...
- 开源字体不香吗?五款 GitHub 上的爆红字体任君选
作者:HelloGitHub-ChungZH 在编程时,用一个你喜欢的字体可以大大提高效率,越看越舒服.这篇文章就推荐 5 个在 GitHub 上优秀的字体供大家选择吧! 1. Iosevka 网站: ...
- 原生js实现随着滚动条滚动,导航会自动切换的效果
最近学习前端,把前面用原生js写的一段有关tab切换效果的代码贴上,实现的效果比较简陋,请大家见谅 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...