您的位置:首页 > 数据库 > MySQL

2016-2-21mysql笔记

2016-02-21 21:43 633 查看
select database();------查看当前使用的数据库
select user();------查看当前使用的用户
show tables from database_name;-----查看库中有哪些表
grant -----授权操作
grant all on db_name to user_name identified by "mypass"

update mysql.user set password=你要设定的密码 where user='root';
flush privileges;

mysql的用户及访问权限,主要信息保存在如下六张表中
user表:contains database-level privileges
db表:库级别权限
host:已经废弃
tables_priv:表级别权限
columns_priv:列级别权限
procs_priv:存储过程和存储函数相关权限
proxies_priv:代理用户权限

用户账号:由用户名@主机 构成,用户名16个字符以内

权限级别
全局级别:super,
库级别
表级别
列级别
存储过程和存储函数

创建USER的命令
create user user_name@host identified by 'passwd';---创建用户
grant ALL privileges on db_name.* to username@'%' ---为user授权权限
grant create on dbname_* to 'username'@'%';--为user授权能在dbname库下的权限
drop user 'username'@'host'; -----删除用户
rename user oldname@'host' to newname@'host'; -----用户重命名

revoke 权限 on 数据库 from 'username'@'hostname';------收回权限命令

找回管理员密码
1.service mysqld stop
2.vi /etc/init.d/mysqld 文件,在里面加入--skip-grant-tables --skip-networking
3.重启服务后,即可无密码登录
4.update user set password=password('1234') where user=root;
5.关闭mysql服务,重新把/etc/init.d/mysqld增加的内容修改回原内容
6.重启服务,即可以新密码登录

mysql客户端工具
mysql
mysqldump
mysqladmin
mysqlcheck
mysqlimport
[client]
-u username
-h hostname
-p password
--protocol {tcp|socket} protocol

mysql非客户端工具
myisamchk
myisampack

myisam 引擎
每个表有三个文件
.frm --表结构
.MYD --表数据
.MYI --表索引

innodb引擎
所有表共享一个表空间文件
建议:每表使用独立的文件,默认没打开
show variables like '%innodb%';可以通过此命令查看
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  笔记 sql 引擎