一、mysql 登录方式

   1.1 格式:mysql -u用户名 -p密码 -h ip -P 端口 -S 套接字

mysql -uvagrant -pvagrant -h 127.0.0.1 -P 3306 -S /tmp/mysql.lock
为什么有的用户可以这样登陆??
mysql -uroot -proot
or
mysql 为什么他们的登陆那么简单?答案就是 mysql配置文件设置了默认登录信息,查询如下

  1.2 mysql 配置文件位置

windows中 mysql 配置文件名 my.ini  一般在mysql 安装路径/etc/my.ini

linux 中mysql配置文件名 my.cf  一般在 /etc/my.cf

  1.3 mysql 配置文件信息说明

[client]
# 客户端连接时 使用的配置信息
#password = your_password
port = 3306 # -P port
socket = /tmp/mysql.sock [mysqld]
# mysqld启动时使用的配置信息 port = 3306        # 启动时使用的ip端口
socket = /tmp/mysql.sock
datadir = /usr/local/mysql/var
skip-external-locking
key_buffer_size = 32M
max_allowed_packet = 1M
table_open_cache = 128
sort_buffer_size = 768K
net_buffer_length = 8K
read_buffer_size = 768K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
thread_cache_size = 16
query_cache_size = 16M
tmp_table_size = 32M explicit_defaults_for_timestamp = true
max_connections = 500
max_connect_errors = 100
open_files_limit = 65535 log-bin=mysql-bin
binlog_format=mixed
server-id = 1
expire_logs_days = 10
early-plugin-load = ""
default_storage_engine = InnoDB
innodb_data_home_dir = /usr/local/mysql/var
innodb_data_file_path = ibdata1:10M:autoextend
innodb_log_group_home_dir = /usr/local/mysql/var
innodb_buffer_pool_size = 128M
innodb_log_file_size = 32M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit = 1
innodb_lock_wait_timeout = 50 [mysqldump]
quick
max_allowed_packet = 16M [mysql]
# mysql 使用命令行登陆时的使用信息 user = vagrant # -uuser
password = vagrant # -ppassword
no-auto-rehash [myisamchk]
key_buffer_size = 32M
sort_buffer_size = 768K
read_buffer = 2M
write_buffer = 2M [mysqlhotcopy]
interactive-timeout #!!!如果没有[mysql],则用户在执行mysql命令时的配置以[client]为准
# 如 [mysql] 下面的信息
# user=vagrant 表示命令行默认使用vagrant用户
# password = vagrant 表示命令行莫恩使用vagrant密码
其他的信息由[client]下提供

二、用户创建与删除

  2.1 创建权限用户

  格式:

grant 权限 on 库.表 to 用户名.'主机范围' identified by '密码';(该命令也可以修改权限作业范围和用户密码)

  举例1:

grant ALL on *.* to test@'127.0.0.1' identified by ''

#说明:
# 用户名:test
# 密码:123
# 主机范围:127.0.0.1 (表示这是本即可以登陆)
# 权限作业范围*.*: 所有库,所有表
#     权限: ALL
# 登陆方式:
  mysql -utest -p123 -h 127.0.0.1

  举例二:

grant all blog.* 'py'@'192.168.33.1' identified by '';

# 说明:
# 用户名:py
# 密码:123
# 主机范围:192.168.33.1(只有该ip主机可以登陆)
# 权限作业访问:blog数据库下的所有表
# 权限: ALL

  另外说明:

# 想要命令立即生效:可以在命令执行后在执行下面命令
# flush privileges;

 2.2 删除权限用户

  格式:

drop user '用户名'@'主机范围';   # 执行命令即可删除 权限用户
flush privileges; # 该命令会立即生效上面执行的sql 语句

  2.3 查看用户

select * from mysql.user;

# 也可以使用如下操作
# use mysql
# select * from user # 上面的mysql.user ,简化了进入mysql库这一步

三、权限授权与撤销

  3.1 查看可创建的用户权限

    命令: show privileges;

  3.2 删除用户授权

    格式:

revoke 权限 on 库.表 from '用户名'@'主机范围';
# 该命令即使创建用户,也是修改用户权限
# 用户名和主机范围 必须是已创建过的,这样才可以修改,

    举例:

revoke ALTER,UPDATE,CREATE,INSERT on *.* from 'py'@'192.168.33.1';

# 将用户名:py
# 主机名:192.168.33.1
# 权限作用范围*.*: 所有的库下面的表都删除ALTER,UPDATE,CREATE,INSERT 权限

  3.3 查看用户权限

    格式:

show grants for '用户名'@'主机范围';

# 例如:
# show grant for 'root'@'localhost';

mysql 登录与权限的更多相关文章

  1. grant all赋权后mysql.user表权限字段还是N,但能登录和新建表

    grant all赋权后mysql.user表权限字段还是N,但能登录和新建表 grant all privileges on linuxeye.* to linuxeye@'localhost' i ...

  2. MySQL分配角色权限

    1.创建新用户 通过root用户登录之后创建 >> grant all privileges on *.* to testuser@localhost identified by &quo ...

  3. mysql 登录及常用命令

    一.mysql服务的启动和停止 mysql> net stop mysql mysql> net start mysql 二.登陆mysql mysql> 语法如下: mysql - ...

  4. MySQL数据库管理用户权限

    http://blog.itpub.net/7607759/viewspace-675079/ 2.2 授予权限 前面提到了grant命令,grant的语法看起来可是相当复杂的呐: GRANT pri ...

  5. 转: MySQL 赋予用户权限(grant %-远程和localhost-本地区别)

    相关参考资料: MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. gr ...

  6. 详细解读MySQL中的权限

    一.前言 很多文章中会说,数据库的权限按最小权限为原则,这句话本身没有错,但是却是一句空话.因为最小权限,这个东西太抽象,很多时候你并弄不清楚具体他需要哪 些权限. 现在很多mysql用着root账户 ...

  7. MySQL用户与权限管理

    执行mysql select 查询报错: SELECT command denied to user 'root'@'localhost' for table "xxx" 问题原因 ...

  8. MySql 用户 及权限操作

    bin/msyql -h host -u user -p    bin/mysql -u mysql -p  本地登录 如无密码按回车直接进入mySql   bin/mysqladmin -u roo ...

  9. MYSQL数据库管理之权限管理

    经常遇到有网友在QQ群或者论坛上问关于mysql权限的问题,今天抽空总结一下关于这几年使用MYSQL的时候关于MYSQL数据库的权限管理的经验,也希望能对使用mysql的网友有所帮助! 一.MYSQL ...

随机推荐

  1. Oracle存储过程给变量赋值的方法

    截止到目前我发现有三种方法可以在存储过程中给变量进行赋值: 1.直接法     := 如:v_flag := 0; 2.select into 如:假设变量名为v_flag,select count( ...

  2. 【转】linux命令

    shell实例手册 0 说明{ 手册制作: 雪松    更新日期: 2015-11-02 欢迎系统运维加入Q群: 198173206  # 加群请回答问题    欢迎运维开发加入Q群: 3655344 ...

  3. 学习廖雪峰的Python教程之第一个Python程序

    一.命令行模式和Python交互模式的区分 命令行模式: Python交互模式 二.文本编辑器 1.绝对不能用Word和Windows自带的记事本.Word保存的不是纯文本文件,而记事本会自作聪明地在 ...

  4. VC维与DNN的Boundary

    原文链接:解读机器学习基础概念:VC维来去 作者:vincentyao 目录: 说说历史 Hoeffding不等式 Connection to Learning 学习可行的两个核心条件 Effecti ...

  5. React Native未来导航者:react-navigation 使用详解

    该库包含三类组件: (1)StackNavigator:用来跳转页面和传递参数 (2)TabNavigator:类似底部导航栏,用来在同一屏幕下切换不同界面 (3)DrawerNavigator:侧滑 ...

  6. 初识cocos creator的一些问题

    本文的cocos creator版本为v1.9.01.color赋值cc.Label组件并没有颜色相关的属性,但是Node有color的属性. //如果4个参数,在ios下有问题let rgb = [ ...

  7. X509 颁发者和使用者 详解

    CN=公用名称C=国家ST=省份L =城市或者区域O=组织名称OU=组织单位名称

  8. python学习之小小爬虫

    学习python一段时间了,写了一个图片的小小爬虫,分享下,不喜勿喷! #coding=utf-8 ''' Created on 2015-5-22 @author: 悦文 ''' import re ...

  9. Python 集合 day3

    集合(set)是一个无序的不重复元素序列. 可以使用大括号 { } 或者 set() 函数创建集合,集合用{},里面是一个一个元素,不同于key-value形式的字典: 注意:创建一个空集合必须用 s ...

  10. python中的二进制、八进制、十六进制

    python中通常显示和运算的是十进制数字. 一.python中的二进制 bin()函数,将十进制转换为二进制,0b是二进制的前缀.如: >>> bin(10) '0b1010' 二 ...