mysql之一
MySQL or MariaDB 简介
- DBMS:数据库管理系统
- RDBMS:关系型数据库管理系统
- 关系模型:
- 设计范式:
- 数据库-----》表------》索引---》视图(虚表)
- 数据的三层模型:
- 物理层视图:RAID。。。
- 逻辑层视图:设计表结构,数据的恢复,导入导出
- 视图层:用户视图:增删改查数据
- 关系型数据库解决方案:
- 商业版:oracle,sybase,infomix(IBM),DB2
- 开源版:MySQL,MariaDB,PostgreSQL,SQLite
- 两条路线
- mysql常见版本:5.1----->5.5------>5.6------->5.7
- mariadb
- mysql的配置文件内容简介:
- 采用的是集中式的配置,能够为mysql的各种应用程序提供配置信息
- [mysqld]:用于mysqld这个应用程序配置
- [mysqld_safe]:线程安全的mysqld程序配置
- [mysqld_multi]:多实例的mysql程序配置
- [server]:服务端程序
- [mysql]:客户端程序
- [mysqldump]:mysql的备份还原程序
- [client]:表示上述配置对客户端都有效
- 参数定义
- 查找配置文件的路径:
- /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用户设定密码:
mysql>set passwordmysql>update mysql.user set password=PASSWORD('password') where clausse;mysql>flush privileges;#mysqladmin ...
- 删除所有的匿名用户
mysql>drop user ''@'localhost';同样也可以通过mysql_sequre_installation来实现用户加密和删除
- 关闭主机名反解功能
- 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):工作特性有多重定义方式
- 命令行选项
- 配置文件参数
[root@localhost ~]# mysql --verbos --help #查看所有帮助信息
- 获取运行中的mysql进程使用各参数及其值:
MariaDB [(none)]> show variables;
- 修改服务器参数的值:
MariaDB [(none)]> help set; #查看set的帮助信息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
- 全局变量的修改:
MariaDB [(none)]> set global system_var_name = value;MariaDB [(none)]> set @@global.system_var_name=value;
- 会话变量的修改:
MariaDB [(none)]> set [session] system_var_name=value;MariaDB [(none)]> set @@[session.]system_var_name=value;
- 状态变量(不能修改的):
MariaDB [(none)]> set global status;MariaDB [(none)]> set [session] global status;
mysql之一的更多相关文章
- Hadoop 中利用 mapreduce 读写 mysql 数据
Hadoop 中利用 mapreduce 读写 mysql 数据 有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv.uv 数据,然后为了实时查询的需求,或者一些 OLAP ...
- mysql每秒最多能插入多少条数据 ? 死磕性能压测
前段时间搞优化,最后瓶颈发现都在数据库单点上. 问DBA,给我的写入答案是在1W(机械硬盘)左右. 联想起前几天infoQ上一篇文章说他们最好的硬件写入速度在2W后也无法提高(SSD硬盘) 但这东西感 ...
- LINUX篇,设置MYSQL远程访问实用版
每次设置root和远程访问都容易出现问题, 总结了个通用方法, 关键在于实用 step1: # mysql -u root mysql mysql> Grant all privileges o ...
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- MySQL高级知识- MySQL的架构介绍
[TOC] 1.MySQL 简介 概述 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司. MySQL是一种关联数据库管理系统,将数据保存在不同的表中,而 ...
- 闰秒导致MySQL服务器的CPU sys过高
今天,有个哥们碰到一个问题,他有一个从库,只要是启动MySQL,CPU使用率就非常高,其中sys占比也比较高,具体可见下图. 注意:他的生产环境是物理机,单个CPU,4个Core. 于是,他抓取了CP ...
- 我的MYSQL学习心得(一) 简单语法
我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类型 我的MYSQL学习心得(五) 运 ...
- Entity Framework Core 实现MySQL 的TimeStamp/RowVersion 并发控制
将通用的序列号生成器库 从SQL Server迁移到Mysql 遇到的一个问题,就是TimeStamp/RowVersion并发控制类型在非Microsoft SQL Server数据库中的实现.SQ ...
- Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境
首先为什么要自己编写Dockerfile来构建 nginx.php.mariadb这三个镜像呢?一是希望更深入了解Dockerfile的使用,也就能初步了解docker镜像是如何被构建的:二是希望将来 ...
- 当忘记mysql数据库密码时如何进行修改
因为长时间没有使用数据库了,或者把密码改完之后就忘了数据库密码,不能正常进入数据库,也无法修改密码,有一个简单的常用修改密码方式: 1.首先找到和打开mysql.exe和mysqld.exe所在的文件 ...
随机推荐
- HeadFirst设计模式之观察者模式
一.什么是观察者模式 观察者模式定义了一系列对象间一对多的关系,当主题对象的状态发生变化时,会通知所有观察者 二.自定义观察模式 1. 2. package headfirst.designpatte ...
- LINQ to PostgreSQL Tutorial
原文 LINQ to PostgreSQL Tutorial This tutorial guides you through the process of creating a simple app ...
- border-radius的水平和竖直半径
通常我们设置border-radius都只区分四个角的, 如border-radius: 1em 2em. 其实每个角的border-radius都由两部分组成, 水平半径和竖直半径. 要设置水平和竖 ...
- dup和dup2函数以及管道的实现
疑问:管道应该不是这样实现的,因为这要求修改程序的代码 dup和dup2也是两个非常有用的调用,它们的作用都是用来复制一个文件的描述符.它们经常用来重定向进程的stdin.stdout和stderr. ...
- log file sync
Recently, our application system has updated one app. I receive a email of complain the db server ch ...
- PHP array_chunk() 函数
今天在CSDN上,看到了一个问题 一维数组 PHP code array('0'=>'a',1=>'b',2=>'c',3=>'d',4=>'e',5=>'f' ...
- 对于eclipse新建maven工程需要注意的地方。
新建项目的时候,如果想配置默认的maven的jre为1.6或者别的. http://hi.baidu.com/hi_hi/item/765ec8bbc49880d384dd79d1 1.cmd命令建立 ...
- javacript序列化表单数据
在前端开发时,用到表单交互的比较多,在我们实现一些异步操作数据时,表单数据的序列化就显得尤为重要了.下面我们一起来看看如何进行序列化. 如,我们在进行提交表单时,地址栏里会显示这样的东东:name=z ...
- java 死锁及解决
Java线程死锁如何避免这一悲剧 Java线程死锁需要如何解决,这个问题一直在我们不断的使用中需要只有不断的关键.不幸的是,使用上锁会带来其他问题.让我们来看一些常见问题以及相应的解决方法: Jav ...
- [原]Unity3D深入浅出 - 认识开发环境中的Layers面板
Layers(分层)下拉列表:用来控制Scene视图中游戏对象的显示,在下拉菜单中为勾选状态的物体将显示在Scene视图中. Everything:显示所有的游戏对象 Nothing:不显示任何游戏对 ...