婚纱网站建设微信群,姑苏区网站建设,网站设计制作哪家好,wordpress 获得主题内容回顾Xpath选择器不要求记忆#xff0c;只要混个眼熟即可基于openpyxl模块爬取豆瓣电影单页爬取多页爬取1.校验请求头里面是否有User-Agent参数 请求头里面加上即可2.限制IP规定时间内的访问次数 1.人为的加上时间延迟 在你的程序里面加上time.sleep()让你的程序间歇一段时…内容回顾Xpath选择器不要求记忆只要混个眼熟即可基于openpyxl模块爬取豆瓣电影单页爬取多页爬取1.校验请求头里面是否有User-Agent参数 请求头里面加上即可2.限制IP规定时间内的访问次数 1.人为的加上时间延迟 在你的程序里面加上time.sleep()让你的程序间歇一段时间之后再执行 2.IP代理池非关系型数据库之MongoDB关系型数据库与非关系型数据库常见数据库软件的端口号 3306 MySQL 6379 redis 27017 MongoDB今日内容概要MongoDB下载与安装基本命令操作账号创建及权限管理快捷操作MongoDB软件NavicatRobo 3T今日内容详细MongoDB下载与安装百度搜索官网点击社区版本(community server)下载即可安装步骤可以参考:MongoDB 教程 | 菜鸟教程1.下载.msi的文件2.完成后双击该文件 custom自定义安装路径(放到D、E、F盘的根目录下) D: E: F: 不要勾选install MongoDB Compass3.手动在MongoDB文件夹根目录下(自动创建了就不要创了 版本原因) 1.创建data文件夹 然后再data文件夹内创建db文件夹 2.创建log目录 然后在log目录下创建mongod.log文件4.将mongod.exe文件所在的路径添加到环境变量中 mongod.exe mongodb数据库的服务端 mysqld.exe MySQL数据库的服务端5.在MongoDB文件夹根目录下 创建mongod.cfg文件 在该文件内拷贝以下代码 systemLog: destination: file path: D:MongoDBlogmongod.log logAppend: true storage: journal: enabled: true dbPath: D:MongoDBdatadb net: bindIp: 0.0.0.0 port: 27017 setParameter: enableLocalhostAuthBypass: false6.系统服务制作 一定要用管理员身份打开cmd终端 mongod --config D:MongoDBmongod.cfg --bind_ip 0.0.0.0 --install 或者直接在命令行指定配置 mongod --bind_ip 0.0.0.0 --port 27017 --logpath D:MongoDBlogmongod.log --logappend --dbpath D:MongoDBdatadb --serviceName MongoDB --serviceDisplayName MongoDB --install --auth注意这里--auth如果没有创建权限管理就不要加7.启动关闭net start MongoDBnet stop MongoDB8.登录mongoMongoDB重要概念MySQL中三个重要概念库 文件夹表 文件夹里面的文件记录数据 文件里面的一行行数据# 查看所有的库show databases; # MySQL命令show dbs # MongoDB命令SQL术语/概念 MongoDB术语/概念 解释/说明database database 数据库table collection 数据库表/集合row document 数据记录行/文档column field 数据字段/域index index 索引inner join 表连接,MongoDB不支持primary key primary key MongoDB自动将_id字段设置为主键库的增删改查1.创建use 库名 # use db1# 库不存在会自动创建(临时先创建在内存中) 但是只有当你真正在该库里面产生数据之后才会刷到硬盘(再保存到硬盘) 如果不录入数据则创建的库就没了 所以用show dbs可能查看不到2.查看show dbs3.改(忽略)4.删要先有数据的库才能删除use db1db.db1.insert({name:jason})db.dropDatabase() (这里敲代码时tab键补全集合的增删改查1.查show tables2.增 db.集合名 # 规律跟 use 库名一致 里面没有数据是show不出来的 db是关键字 db.createCollection(集合名) # db.createCollection(t2) # 直接写入硬盘3.改(忽略)因为没有固定表结构没有字段 字段名 字段类型4.删 db.集合名.drop() # db.t2.drop()文档增删改查1.增 单条 db.集合名.insert({...}) # db.t1.insert({name:jason}) 等价于db.集合名.save({...}) 多条 db.集合名.insert([{...},{...},{...},{...}])2.查 查询所有 db.集合名.find() # db.t1.find()3.改 db.集合名.update( 筛选条件 新的内容 ) db.t1.update({name:jason1},{$set:{name:jason111}})4.删 db.集合名.remove( 筛选条件 ) db.t1.remove({name:jason2}) #1、删除多个中的第一个 db.t1.deleteOne({ age: 8 }) #2、删除国家为China的全部 db.t1.deleteMany( {addr.country: China} ) #3、删除全部 db.t1.deleteMany({}) 用户创建及权限管理正常的数据库软件都应该有用户及对应的权限管理不可能所有人都是管理员都可以对所有的数据进行操作有些用户只可以查看有些用户可以修改有些用户可以删除...管理员账户需要在admin数据库下创建 1.切换到admin数据库下 use admin 2.创建账户并且赋予权限 db.createUser( { user: root, pwd: 123, roles: [ { role: root, db: admin } ] } )其他用户在test数据库下创建 1.切换到test数据库下 use test 2.创建账户并赋予权限 db.createUser( { user: jason, pwd: 123, roles: [ { role: readWrite, db: test }, { role: read, db: db1 } ] } )上述账户都可以创建多个先停止服务 net stop MongoDB再移除服务 mongod --remove再次添加 mongod --bind_ip 0.0.0.0 --port 27017 --logpath D:MongoDBlogmongod.log --logappend --dbpath D:MongoDBdata --serviceName MongoDB --serviceDisplayName MongoDB --install --auth 再次启动 net start MongoDB两种验证方式 1.直接在登录的时候验证 mongo -u root -p 123 --port 27017 --authenticationDatabase admin 2.进入之后再验证 mongo use admin db.auth(root,123)注意在切换账户时普通用户不能直接切换到管理员身份需要exit退出后重新进入作业1.记忆关系型数据库的ACID四大特性原子性Atomicity化学中的原子指不可再分的基本微粒数据库中原子性强调事务是一个不可分割的整体事务开始后所有操作要么全部成功要么全部失败不可能停滞在中间某个环节。如果事务执行过程中出错就会回滚到事务开始前的状态所有的操作就像没有发生一样不会对数据库有任何影响。一致性Consistency事务必须使数据库从一个一致性状态变换到另一个一致性状态即一个事务执行之前和执行之后都必须处于一致性状态。拿转账来说假设用户A和用户B两者的钱加起来一共是5000那么不管A和B之间如何转账转几次账事务结束后两个用户的钱相加起来应该还是5000这就是事务的一致性。隔离性Isolation当多个用户并发访问数据库时比如操作同一张表时数据库为每一个用户开启的事务不能被其他事务的操作所干扰多个并发事务之间要相互隔离比如A正在从一张银行卡中取钱在A取钱的过程结束前B不能向这张卡转入钱。持久性Durability一个事务一旦被提交则对数据库的所有更新将被保存到数据库中不能回滚。2.自己总结归纳数据库三大范式第一范式保证每列具有原子性列不可再分。第二范式 确保表中的每一列都和主键相关第三范式 数据库中的每一列和主键列直接相关而不是间接相关3.自己独立完成数据库的安装并创建两个管理员账户三个普通用户账户 三个普通账户各自权限都不一致