zoukankan      html  css  js  c++  java
  • mysql之一

    MySQL or MariaDB 简介

    • DBMS:数据库管理系统
    • RDBMS:关系型数据库管理系统
       总之:他们都是一个数据管理程序;大多都是CS架构,都有专门的通信协议进行数据交换
    • 关系模型:
                  表(行或者列):二维关系
    • 设计范式:
                    第一范式、第二范式、第三范式
                    关系运算:选择(选择行);投影(选择咧)
    •  数据库-----》表------》索引---》视图(虚表)
                     SQL(结构化查询语言):
                                    DDL(数据定义语言)
                                    DML(数据操作语言)
                                    编程接口:支持判断,选择,循环。。。
                                                       可以定义存储过程;存储函数;触发器;事件调度器;过程式编程(选择,循环)
    • 数据的三层模型:
      • 物理层视图:RAID。。。
      • 逻辑层视图:设计表结构,数据的恢复,导入导出
      • 视图层:用户视图:增删改查数据
    • 关系型数据库解决方案:
      • 商业版:oracle,sybase,infomix(IBM),DB2
      • 开源版:MySQL,MariaDB,PostgreSQL,SQLite
    • 两条路线
      • mysql常见版本:5.1----->5.5------>5.6------->5.7
      • mariadb
                总结:mysql&mariadb选用的是插件式数据存储引擎
                           mariadb的单进程多线程
                                                连接线程    
                                                守护线程
    • mysql的配置文件内容简介:
      • 采用的是集中式的配置,能够为mysql的各种应用程序提供配置信息
      • [mysqld]:用于mysqld这个应用程序配置
      • [mysqld_safe]:线程安全的mysqld程序配置
      • [mysqld_multi]:多实例的mysql程序配置
      • [server]:服务端程序
      • [mysql]:客户端程序
      • [mysqldump]:mysql的备份还原程序
      • [client]:表示上述配置对客户端都有效
    • 参数定义
                parameter = value
                skip-name-resolve:跳过域名解析
    • 查找配置文件的路径:
      • /etc/my.cnf---->/etc/mysql/my.cnf----->$MYSQL_HOME/my.cnf---> --default-extra-file=/path/to/somedir/my.cnf-----> ~/.my.cnf        #按此顺序找。后找的会覆盖之前找到的

    安装方法

    • os vendor:rpm安装
    • MySQL:
      • rpm
      • 展开可用
      • 源码编译安装
    • 安装之后的设定
      • 为所有root用户设定密码:
    1. mysql>set password
    2. mysql>update mysql.user set password=PASSWORD('password') where clausse;
    3. mysql>flush privileges;
    4. #mysqladmin ...
      • 删除所有的匿名用户
    1. mysql>drop user ''@'localhost';
    2. 同样也可以通过mysql_sequre_installation来实现用户加密和删除
      • 关闭主机名反解功能
              **元数据库:mysql
                                    user,host
    • mysql的客户端程序:
      • mysql:交互式CLI工具
      • mysqldump:备份工具;基于mysql协议向mysqld发起查询请求,,并将查到的数据转换城INSERT等写操作语句保存到文本文件中
      • mysqladmin:这是mysql的客户端专用管理工具
      • mysqlimport :数据导入工具
    • mysql的非客户端类的管理工具
      • myisamchk:myisam引擎检查工具
      • myisampack:myisam打包工具(只读),节约空间
        • 客户端类的应用程序的可用选项:
          • -u;--user=
          • -h;--host=
          • -p;--password=
          • -P;--port=
          • --protocol={tcp|sock}
          • -S;--socket=
          • -D;--database=         #默认数据库
          • -C;--compress          #压缩
        • mysql -e "SQL"       #非交互格式执行sql
    • 获取程序的默认配置:
      • mysql --print-defaults         #不详细
      • mysqld --print-defaults       #详细
    • mysql的使用模式:
      • 交互式模式
        • 可运行的命令有两类:
          • 客户端命令:h,help
          • 服务器端命令:需要语句结束符
      • 脚本模式
        • mysql -uUSERNAME -pPASSWORD < /path/from/somefile.sql
        • mysql>source /path/from/somefile.sql
    • mysql的服务器端(mysqld):工作特性有多重定义方式
      • 命令行选项
      • 配置文件参数
    1. [root@localhost ~]# mysql --verbos --help #查看所有帮助信息
    • 获取运行中的mysql进程使用各参数及其值:
    1. MariaDB [(none)]> show variables;
              注意:其中有些参数支持运行时修改,会立即生效;有些参数不支持,切只支持修改配置文件然后重启服务才能生效
                          有些参数的作用域是全局的,切不可修改;有些可以为每个用户提供单独的设置
    • 修改服务器参数的值:
    1. MariaDB [(none)]> help set; #查看set的帮助信息
    2. Name: 'SET' Description: Syntax: SET variable_assignment [, variable_assignment] ... variable_assignment: user_var_name = expr | [GLOBAL | SESSION] system_var_name = expr | [@@global. | @@session. | @@]system_var_name = expr
    • 全局变量的修改:
    1. MariaDB [(none)]> set global system_var_name = value;
    2. MariaDB [(none)]> set @@global.system_var_name=value;
    • 会话变量的修改:
    1. MariaDB [(none)]> set [session] system_var_name=value;
    2. MariaDB [(none)]> set @@[session.]system_var_name=value;
    • 状态变量(不能修改的):
    1. MariaDB [(none)]> set global status;
    2. MariaDB [(none)]> set [session] global status;



                    





  • 相关阅读:
    View(视图)
    计算器 ——给按钮添加监听器
    Activity(活动)
    UI组件
    计算器界面——GridLayout
    信息界面——GridLayout
    Android计算器界面 TableLayout
    javaji基础x2
    java的开始
    数据类型
  • 原文地址:https://www.cnblogs.com/wanghui1991/p/6261833.html
Copyright © 2011-2022 走看看