zoukankan      html  css  js  c++  java
  • day 33

    今日内容:
    一.认识数据库
        什么是数据库? >>> 存放数据的库
        文件处理就可以将文件的永久保存(open f )
        问题:
            1.管理不方便
            2.文件操作效率问题
            3.一个程序不太可能运行在同一台电脑上
        提高计算机的性能:
            1.垂直扩展:指的是更换性能更好的硬件
            2.水平扩展:添加更多的计算,把任务分配给每一台计算机(分布式计算)
               分布式计算的好处:
                    1.其中一台计算机挂了,不会导致整个系统奔溃 >>>>>稳定高
                    2.理论上性能可以无限扩展
                分布式运算其实也是一个整体,
                问题一:数据需要被共享 >>>>> 需要socket技术
                问题二:共享就存在竞争问题>>加锁处理(互斥锁)
                问题三:文件存取效率
        数据库:本质上就是一套基于socket编写的软件 由服务器端和客户端  C/S  B/S
        早些年 没有数据库的时候,程序员想要实现功能的自己写一套socket 并解决上述问题>>>>>有了数据库
    
        常见的数据库:
            1. 关系型数据库(数据间可以建立联系):
                SQLServer(微软):只支持Windows
                MYSQL(最火目前也属于Oracle):免费,开源,性能也不差(支持高并发)   先后被 sun 和 Oracle收购
    
                Oracle(甲骨文):目前最牛逼的数据库  收费高
                DB2(IBM):收费的 IMB主要是做硬件 ,一般与自己卖的计算机绑定
    
            2. 非关系型数据库(数据之间没有联系):  优点:速度快, 以key:values取  >>>一般放在缓存中
                MongoDB
                Redis
                mencache
    
    
    二.数据库相关的概念:
        1.数据:用于记录某事物的状态的符号  数字 音频
           age = 200
        2.记录:一个事物的典型特征的组合 在文件中就是一行文本
            name age .......
        3.表:就是一个文件 存放的是一个记录
        4.库:就是有个文件夹  存放是的是表
                数据>>记录>>表>>5.数据库管理系统:(Database Management System DBMS) 就是一个软件用来管理库的  >>> C/S socket
        6.数据库服务器:(Database Server DBS)运行着DBMS的计算机称之为数据库服务器
    
    三.安装mysql
    mysqld:服务端
    mysql:客户端
    1.添加环境变量:(bin)
    2.注册了系统服务: mysql --install
    3.修改密码:mysqladmin :用于设置密码
        mysqladmin -uroot -p 旧密码 新密码
    4.破解密码:
        1.删除存储密码的文件
        2.重装mysql
        3.可以在启动服务器时不要读取密码文件
            1.mysqld +-skip-grant-tables
            2.无密码登入
            3.使用updata 来更新数据 data.mysql.user
              updata mysql.user set password = password("321") where user = "root" and host = "localhost";
            4.重启服务,验证新密码
    
    5. 解决编码问题:(添加一个文件 )my-default- ini
    
    
    sql基础:
        数据库服务器存放的是 库(文件夹) 表(文件) 表里面的记录(一行数据)
    
        库相关(database):
            创建:
                create database 数据库名字 charset 编码名称
            删除:drop database 数据库名
            修改:
                alter database 数据库名字 charset gbk
            查:
             show databases
             show database 数据库名字  查看建库语句
    
    
        表相关:(table)
            创建:
                create table 文件夹名.t1(id int,name chr)
            删除:
                drop table 表名
                truncate table 表名(重建表) >>清空数据
            修改:
                该结构:
                alter table 表名 add|drop(删)|modify(修改)|change(修改)
                add 字段名 数据类型
                drop 字段名
                modify 字段名 新类型
                change  久字段名 新的字段名 新类型
                该属性:
                    编码:alter table t1 charset gbk
    
                    表名: rename table 久表名 to 新表名
            查:
                show tables;
                show create table 表名 查看建表语句
                desc 表名 查看表结构
    
    
    
        记录相关:
            添加:
                insert into 表名  values(值1.....),插入时值得顺序和类型必须与表一致
            删除:
                delete from  表名 where 条件
            修改:
                update 表名 set 字段名=新的值 where 条件
                可以同时多个字段名的数据
            查:
                select *|字段名 from 表名
  • 相关阅读:
    【译】x86程序员手册30-8.2 I/O指令
    【译】x86程序员手册29-第8章 输入输出
    【译】x86程序员手册28-7.7任务地址空间
    【译】x86程序员手册27-7.6任务链
    【译】x86程序员手册26-7.5任务切换
    【译】x86程序员手册25-7.1任务状态段
    【译】x86程序员手册23-6.5组合页与段保护
    【译】x86程序员手册24-第7章 多任务
    【译】x86程序员手册22-6.4页级保护
    WPF Blend Grid 布局
  • 原文地址:https://www.cnblogs.com/jxl123/p/9629571.html
Copyright © 2011-2022 走看看