数据库
"""
常见软件的默认端口号
MySQL 3306
redis 6379
mongodb 27017
django 8000
flask 5000
客户端连接服务端完整命令
mysql -h 127.0.0.1 -P 3306 -uroot -p
"""
sql语句
"""
1 MySQL中的sql语句是以分号作为结束的标志
2 基本命令
show databases; 查看所有的库名
3 连接服务端的命令
mysql -uroot -p
4 当你输入的命令不对 又不想让服务端执行并返回报错信息时,可以用\c取消
错误命令 \n
5 客户端退出 退出命令加不加分号都可以执行
quit
exit
6 当你在连接服务端的时候 发现只输入myqul也能连接
"""
"""
1 如何查看当前具体进程
tasklist
tasklist |findstr mysqld
2 如何杀死具体进程(只有在管理员cmd窗口下才能成功)
taskkill /F /PID PID号
"""
环境变量配置
"""
每次启动myqld需要先切到对应的文件路径下才能操作太多繁琐
将mysqld所在的文件路径添加到系统环境变量中
"""
将mysql服务端制作成系统服务(开机自启动)
"""
查看当前计算机的运行进程数
services.msc
将myssql制作成系统服务
mysqld --install
移除mysql系统服务
mysqld --remove
"""
设置密码
"""
mysqladmin -root -p原密码 password 新密码
改命令直接在终端输入即可
mysqladmin -uroot -p123 password 123456
"""
密码破解
"""
可以将mysql获取用户名和密码校验的功能看成一个装饰器
装饰在了客户端请求访问的功能上
如果将该装饰器移除,那么mysaql服务端就不会校验用户名和密码了
"""
# 1 先关闭当前的mysql服务端
mysqld --skip-grant-tables
# 2 直接无密码的方式连接
mysql -uroot -p 直接回车
# 3 修改当前用户的密码
update mysql.user set password=password(123456)where user='root' and host='localhost';
# 4 立刻将修改数据刷到硬盘
flush privileges;
# 5 关闭当前服务端 然后已正常校验授权表形式启动
统一编码
mysql默认的配置文件
"""
my-ini # 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
针对库的增删查改(文件夹)
# 增
create database db1;
create database db2 charset='gbk';
# 查
show databases; # 查所有
show create database db1; #查单个
# 改
alter database db2 charset='utf8';
# 删
drop database db2;
# 查看当前所在的库的名字
select database();
# 切换库
use db1;
针对表的增删查改(文件)
"""
在操作表(文件)的时候,需要指定所在的库(文件夹)
"""
# 增
create table t1(id int,name char(4));
# 查
show create table t1;
describe t1; # 支持简写 desc t1;
# 改
alter table t1 modify name char(16);
# 删
drop table t1;
针对数据的增删查改
# 增
insert into t1 values(1,'jason');
insert into t1 values(1,'jason'),(2,'egon'),(3,'tank');
# 查
select * from t1; # 该命令当数据量特别大的时候不建议使用
select name from t1;
# 改
update t1 set name='DSB' where id >1;
# 删
delete from t1 where id > 1;
delete from t2 where name= 'jason';
#将表所有的数据清空
delete from t1;