数据库的本质是一款基于网络通信的应用程序
数据库大致上分为两种:
关系型数据库和非关系型数据库的区别:
任何基于网络通信的应用程序底层都是用socket
MySQL能支持其他编程语言当成客户端来操作,用的是统一的SQL语言
MySQL要在终端启动,要先启动一个服务端,然后我们在客户端对数据进行操作
先切换到mysqld所在的bin目录下,然后输入mysqld即可
保留原来的cmd窗口重新打开一个
""" 常见软件的默认端口号 MySQL 3306 redis 6379 mongodb 27017 django 8000 flask 5000 ... MySQL第一次以管理员身份进入是没有密码的 直接回车即可 客户端连接服务端完整命令 mysql -h 127.0.0.1 -P 3306 -uroot -p """
MySQL的sql语句都是以;最为结束的标志
小知识点补充
环境变量配置
每次启动mysqld服务端都要在mysql的bin文件目录下才能启动,这样的方式明显很麻烦,我们可以通过把mysqld文件所在路径添加到系统的环境变量中
这样虽然不用到特定目录下启动服务,但是还是要启动两个cmd
最优解是把mysql服务端制作成系统服务(开机自启动)
设置密码指令
mysqladmin -uroot -p原密码 passwprd 新密码
直接终端修改即可,不需要进入客户端
破解密码
mysql的密码储存是密文形式,如果忘记了就必须重置
mysql在主文件下有一个ini后缀的配置文件
这个配置文件会在程序刚开始运行的时候先加载,再启动
但是一般情况不会再这个自带的ini文件内对mysql配置信息进行修改,通常是自己写一个ini文件让程序运行前加载
my.ini
[mysqld] character-set-server=utf8 collation-server=utf8_general_ci [client] default-character-set=utf8 [mysql] user="root" password=123456 default-character-set=utf8
ps:大部分的程序的业务逻辑都是增删改查
针对库的增删改查(文件夹)
# 增加数据库 create database db2; create database db2 charset = ‘gbk‘; # 查询数据库 show databases; # 查所有 show create database db2; # 查询指定的数据库 # 修改数据库属性 alter database db2 charset = ‘utf8’; # 删除数据库 drop database db2
针对表的增删改查(文件)
我们要修改表/文件的时候,先要找到这个表/文件所在的数据库/文件夹
# 查看当前所在的库的名字 select database(); # 切换库 use db2; # 增加表 create table t1(id int,name char(4)) # 内涵字段名和字段的数据类型 # 查询表 show tables # 查询当前库所有的表 show create table t1;# 查询当前库指 定名称的表 # 这种语句查出来的结果是select语句的形式 describe t1; # 支持简写 desc t1; # 这种语句的查询结果是以表格的形式 # 修改表 alter table t1 modify name char(16) # 修改表某一字段的数据类型 # 删除表 drop table t1; ‘‘‘ 可以用绝对路径操作不同库的表进行操作 create table db1.t1(id int); ‘‘‘
针对数据的增删改查(一行行数据)
# 对数据的操作一定要先有库,有表,最后才能操作 # 增加数据 insert into t2 values(1,‘hz‘),(2,‘egon‘); # 查询数据 select * from t2; # 修改数据 update t2 set name=‘hzdsb’ where id= 1; # 删除数据 delete from t2 where id = 1; # 清空表数据 delete from t2;
原文:https://www.cnblogs.com/Tornadoes-Destroy-Parking-Lots/p/12823203.html