Update mysql.user set password=password('123') where user='root' and host='localhost';
重启数据库
.
.
.
.
.
授权管理
授权语法: grant all [privileges] on db.tbl 'username'@'host' identified by 'password';
- Grant all on . to 'xiaoquan'@'localhost' identified by 'xiaoquan'; // 将本地所有库和表的权限授权给 xiaoquan
- Grant all on . to 'xiaoquan'@'%' identified by 'xiaoquan'; // 给所有主机上有用户 xiaoquan 的授权
- Grant select on mysql.user to 'zhang'@'localhost' identified by '123'; // 指定授权用户可以查询库中的表
- Show grants for 'zhang'@'localhost'\G // 查看权限
- Revoke select on mysql.user from 'zhang'@'localhost'; // 删除权限
- .
- .
- .
- .
- .
- .
数据库变量:
- Show global variables\G // 查看所有全局变量
- Show global variables like '%version%\G // 查看与版本 version 有关的全局变量
Like 关键字匹配 % 通配符相当于 *
- Show global variables where variable_name like 'charavter%'; //global 全局 variables 变量 where 指定条件 variable_name 变量名 like 匹配 // 查看全局与字符集相关的变量
- Show global variables where variable_name like '%log%' and value='off'; // 查看日志关闭的全局参数
- Show session variables\G // 查看回话参数
- Show variables \G // 不知名变量参数 默认的为 session 回话参数
- .
- .
- Select @@[global.|session.] system_var_name // 查看单个变量的语法
- Select @@global.pid_file; // 查看 pid_file 变量参数
- .
- .
- MariaDB [(none)]> select @@session.autocommit; // 查询 autocommit 变量
修改语法:(不指定类型, 默认修改会话变量)
- MariaDB [(none)]> SET GLOBAL var_name = value;
- MariaDB [(none)]> SET @@GLOBAL.var_name = value;
- MariaDB [(none)]> SET SESSION var_name = value;
- MariaDB [(none)]> SET @@SESSIO.var_name = value;
- Set @@session.autoconmmit=0; // 修改 autocommint 参数
运行时修改的变量并非永久有效, 重启后将会失效;
运行时修改 global 级别的变量: 对修改之前建立的会话没有影响, 仅对修改后新建立的会话有效;
运行时修改 session 级别的变量: 仅对当前会话有效, 且立即生效;
如果想要使设定永久有效, 需要设置配置文件.
但是在不确定的情况下, 不要随便修改配置文件, 否则将可能会出现无法预计的问题
.
.
.
MYSQL help 参数:
清除 (\c) 清除当前输入语句.
连接 (\r) 重新连接到服务器. 可选的参数是 DB 和主机.
定界符(\d)SET 语句定界符.
用编辑器编辑 (\e) 编辑命令.
(\g)向 MySQL 服务器发送命令, 垂直显示结果.
退出 (\q) 退出 mysql. 与退出相同.
转到 (\g) 发送命令到 MySQL 服务器.
打印 (\p) 打印当前命令.
提示 (\r) 更改 MySQL 提示符.
退出 (\q) 退出 mysql.
源代码 (.) 执行 SQL 脚本文件. 将文件名作为参数.
状态 (S) 从服务器获取状态信息.
系统 (!) 执行系统外壳命令.
使用 (\u) 使用另一个数据库. 将数据库名称作为参数.
字符集 (\c) 切换到另一字符集. 可能需要用多字节字符集来处理 BILCONG.
警告 (\w) 在每个语句之后显示警告.
(\W)在每个语句之后不显示警告.
.
.
.
.
.
MySQL 的概念
1)什么是数据库
按照数据的关系, 组织, 管理, 存储的系统
2)数据库的分类
关系型: Oracle , MySQL , SQL-server
数据都是按照表状结构存储, 二维关系, 表与表之间可以建立联系, 多表查询, 可以跨越版本, 跨越不同软件, 将数据导入导出
都是基于 SQL(结构化查询语句)
非关系型: Redis memache mongodb
NoSQL = not only SQL , 对关系型数据库的一个补充, 大大提高的查询检索效率, 把所有数据都同意存储, 都有自己的, 不存在数据的链接
当前企业使用 MySQL 的版本分布:
- 5.1 ----- 20%
- 5.5 ----- 60%
5.6 或以上 ----- 20%
Oracle 和 MySQL
Oracle: 应用传统行业(金融, 证券, 大学等), 臃肿, 闭源(收费)
MySQL: 应用于互联网行业(BAT 58 jd 等等), 我们都是根据系统进行二次开发使用, 开源的(RHEL6.x 默认 5.1 系统 -- RHEL7.x 默认 mariadb5.5)
2008 年左右 MySQL 被 SUN 公司收购, 2012 年 SUN 公司又被 Oracle 收购(JDK 也是 Oracle),MySQL 很有可能闭源
MySQL 公司有开发一款和 MySQL 完全相同的数据库 MariaDB
a)安装方式:
yum/rpm 安装
源码安装(cmake 安装) --- 运维, 针对设备少时
二进制安装 --- 开发, 针对集群架构较大时
b)MySQL 版本:
商业版: 收取 lisence 费用 服务费用 -- 针对大公司
社区版: 免费版, 个人用, 小公司
四大发行版本:
Alpha--- 预览版(内部测试版本), 开发人员使用, 完全不对外, 测试大的 bug
Beta--- 测试版(公开测试版), 加入很多新功能, 邀请比较不错的用户尝试使用 ---BAT 公司使用
RC---- 发行版本, 可能会有小 bug , 但是能满足较大的需求
GA---- 稳定发行版本(没有任何的后缀, 就是这个版本)
来源: http://www.bubuko.com/infodetail-2726285.html