前言
sqlite,mysql,redis,mongodb四个数据认识笔记
四个数据库的详细介绍,请看博客:
https://www.cnblogs.com/pungchur/p/14086915.html
一、四个数据的安装
ubuntu apt更换国内源:
step1: vi /etc/apt/sources.list,内容:https://www.cnblogs.com/dream4567/p/9690850.html
step2: 更新apt缓存
apt update
apt upgrade
Ubuntu20.04 安装sqlite
Ubuntu系统中自带python3.8版本,而在python2.5开始,已经内置sqlite3数据库。
Ubuntu20.04 安装mysql(默认端口:3306)
- ubuntu 安装mysql:apt install mysql-server/apt install mysql-client
- 查看mysql 的root账号密码:cat /etc/mysql/debian.cnf
- 需改root密码:
Mysql 8.0以下版本:set password for root@localhost = password(‘new password’);
MySql 8.0及以上版本:
alter user’root’@‘localhost’ identified by ‘new password’;
alter user’root’@‘localhost’ identified with mysql_native_password by ‘new password’;- mysql安装之后的目录结构:
mysql运行配置文件: /etc/mysql/mysql.conf.d/mysqld.cnf(从这查看log存储位置:log_error =
/var/log/mysql/error.log)
数据库存放目录: /var/lib/mysql
相关配置文件存放目录:
/usr/share/mysql
相关命令存放目录: /usr/bin(mysqladmin mysqldump等命令)
启动脚步存放目录:/etc/rc.d/init.d/- 启动/停止 mysql 服务
/etc/init.d/mysql start (service mysql start)
/etc/init.d/mysql restart (service mysql restart)
/etc/init.d/mysql stop (service mysql stop)- MySQl 几个常用的命令
show databases; 查看所有数据库
use dbName; 启用某个数据库
show tables; 查看当前数据库中所有的表格
desc table_name; 查看当前表格的结构
Ubuntu20.04 安装Redis(默认端口6379)
- apt-get install redis-server/apt-get install redis
- 启动 redis服务: redis-server
- 查看是否启动成功:redis-cli
- redis运行配置文件:vi /etc/redis/redis.conf(log存放位置:/var/log/redis/redis-server.log)
Ubuntu20.04 安装MongoDb
- apt-get install mongodb(apt-get install mongodb-server)
- mongodb 运行配置文件:vi /etc/mongodb.conf
- mongoDB默认端口:
27017 mongod 和 mongos 实例的默认端口。你可以通过 port 或 –port 改变该端口。
27018 设置 –shardsvr 运行变量或在配置文件里设置 clusterRole 为 shardsvr 时的默认端口。
27019 设置 –configsvr 运行变量或在配置文件中将 clusterRole 设置为 configsvr 时的默认端口。
28017 系统状态网页的默认端口。系统状态网络页面永远可以在比 port 大 1000 的端口反问。- mondb运行命令: /etc/init.d/mongodb {start|stop|force-stop|restart|force-reload|status}
二、SQL语句简单记录
SQL(Structure Query Language)结构化查询语言,数据库的核心语言,SQL语言基本上独立于数据库本身:
https://www.cnblogs.com/zj19940610/p/12049470.html
SQL语句类型 | 关键字 | 语法模型 | 备注 |
DDL(data definition language)数据库定义语言 | CREATE | CREATE DATABASE dbName; | 针对数据库 |
DROP | DROP DATABASE dbName; | ||
ALTER | mysql不支持该命令,必须曲线救国,将sql语句和数值导出,创建和删除 | ||
CREATE | CREATE TABLE <表名>(列名1 type1 [not null] [primary key], 列名2 type2 [not null],…); | 针对表格 | |
DROP | DROP TABLE <表名>; | ||
ALTER |
ALTER TABLE <表名> ADD 列1 type [not noll];—>增新列 ALTER TABLE <表名> DROP COLUMN 列名1; —>删除列 ALTER TABLE <表名> ALTER COLUMN column_name datatype —>改变表中的列的数据类型 |
||
CREATE |
CREATE INDEX 索引名称 ON <表名> (列名) —>创建索引,可以重复 CREATE UNIQUE INDEX 索引名称 ON <表名> (列名) —>创建唯一索引 |
针对索引 | |
ALTER/DROP | ALTER TABLE <表名> DROP INDEX 索引名字; —>MySql | ||
….. | …. | 针对View | |
DML(data manipulation language)数据库操纵语言 | INSERT | INSERT INTO <表名>(列1,列2,…) VALUES (值1,值2) | |
UPDATE | UPDATE <表名> SET 列名称 = 新值 WHERE 列名称 = 某值 | ||
DELETE | DELETE FROM <表名> WHERE 列名=’值’; —-》删除一整行 | ||
DQL(data query language)数据库查询语言 | SELECT | SELECT <字段名> FROM <表或视图名> WHERE <查询条件>; | |
DCL(data control language)数据库控制语言 | GRANT | ||
ROLLBACK [WORK] TO [SAVEPOINT] | |||
COMMIT[WORK] | |||
DPL/TPL:事务处理语言 | 事务处理语句能确保被DML语句影响的表的所有行及时得以更新。TPL语句包括BEGIN TRANSACTION、COMMIT和ROLLBACK | ||
CCL(指针控制语言) | DECLARE CURSOR、FETCH INTO和UPDATE WHERE CURRENT用于对一个或多个表单独行的操作 | ||
注意.关于数据的提交几点
1). 显示提交:需要用 COMMIT命令直接完成的提交为显示提交<>br
2).隐式提交:用SQL命令间接完成的提交为隐式提交。这些命令为:ALTER,AUDIT,COMMENT,CONNECT,CREATE,DISCONNECT,DROP,EXIT,GRANT,NOAUDIT,QUIT,REVOKE,RENAME。
3).自动提交: 若把AUTOCOMMIT设置为ON,则在插入、修改、删除语句执行后,系统将自动进行提交,这就是自动提交。其格式为:SET AUTOCOMMIT ON;
三、以其中一个数据库详解:MySQL
1.MySQL
MySQL数据类型:
https://www.runoob.com/mysql/mysql-data-types.html
MySQL常用字段属性:
https://blog.csdn.net/csxiaoyaojianxian/article/details/80793561
2.MySQL示例
CREATE TABLE student(id int PRIMARY KEY, name varchar(128) NOT NULL,gender char(16), class varchar(128))
INSERT INTO student VALUES(100001, ‘Lili’, ‘Man’, ‘102’);
INSERT INTO student(id,name,gender, class) VALUES(100002, ‘Mary’, ‘Woman’, ‘101’);
UPDATE student SET name=’MaryLi’,gender=’Man’,class=’101′; UPDATE student SET name=’Lilei’,class=’102′ WHERE id=100001;
DELETE FROM student WHERE gender=’Man’;
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。@
TOC