不懂数据库也要知道的可能用到的数据库命令mysql

登陆数据库

mysql -uroot -p*** -h127.0.0.1 #指定host,用户名和密码是必须的
mysql -h 172.16.16.45 -P 3306 -u root -p123 #指定要访问的数据库的IP和端口,如果是本机可以是localhost和127.0.0.1。
mysql -h localhost -u root -p #隐藏密码输入

修改密码(root登陆)

grant all on *.* to 'test_1'@'localhost' identified by '123456'; 修改test_1密码,测试有效



SET PASSWORD FOR 'test_1'@'localhost' = PASSWORD('123456789');	修改密码命令2,测试有效


alter user 'test_1'@'localhost' identified by '123456';	修改密码命令3,测试有效

授权

普通用户授权

grant select, insert, update, delete on testdb.* to common_user@’%’ 查询、插入、更新、删除 数据库中所有表数据的权利

某些高权限授权

grant create on testdb.* to developer@‘192.168.0.%’; 创建数据表结构权限

grant alter on testdb.* to developer@‘192.168.0.%’; 修改数据表结构权限(可删除列,增加列,重命名列,修改字段类型,修改表名,索引)

grant drop on testdb.* to developer@‘192.168.0.%’; 删除数据表结构权限

数据库里的操作

show datatbases; 显示库
use database; 使用一个库
show tables; 显示所有表
desc test; 查询表的字段信息,了解后可以读取想要的信息
select * from user; 读取所有表的内容,*可改成某些字段,逗号分隔

create table test(id int,name varchar(20)); 创建一个表
insert into test value(3,‘tany’); 往表内插入信息
update test set name=‘jing’ where id=3; 修改信息
delete from test where id = 3; 删除一行
drop table test; 删除表

用户情况查询

show grants for ‘zab’@‘127.0.0.1’; 查看一个用户的权限
show grants; 查看当前用户权限;
select Host,User from user; 查看mysql数据库的user表,显示了用户名和用户应连接的Host

用户操作

drop user ‘yangxin’@‘localhost’; 删除用户
rename user ‘test3’@’%’ to ‘test1’@’%’; 修改帐户和host

grant all on blog.* to ‘blog’@‘127.0.0.1’ identified by ‘password’ #命令可新建用户和设置密码,修改密码也可以;

mysql容易混淆的信息

  • root@localhost的密码是最要紧的,比root@127.0.0.1更重要;
  • root@127.0.0.1的密码跟root@localhost是一样的,修改密码要修改localhost的密码,修改后127.0.0.1的密码跟着变;修改127.0.0.1的密码,不生效;
  • 新建用户@127.0.0.1可能更方便,字符式localhost做接口(使用的socket), 可能也会产生一些问题;
  • grant user@127.0.0.1 是授权user从本机127.0.0.1访问数据库,同样代表访问目标是127.0.0.1;
始发地127.0.0.1
目的地127.0.0.1
  • 改成grant user@192.168.87.141,就是授权user从141的机器上访问数据库;

  • mysql -uuser -h192.168.87.133 是以user帐号访问133机器上的mysql,此时对于目标数据库来源是 本机IP(假设是192.168.87.141),要使用上面的语句在133数据库上授权,grant user@192.168.87.141; 这样才对应得上;

  • grant user@localhost 是授权user从本机的socket访问数据库,同样代表访问目标是socket;另外socket只能本机使用;

始发地socket
目的地socket
  • grant user1@127.0.0.1 登陆是不能使用mysql -uuser1 直接登陆,因为这样登陆目的地是socket, 入口也要是socket, 但是user1没有被授权socket的登陆权限;
  • grant user2@localhost 登陆是不能使用mysql -uuser2 -h127.0.0.1, 因为这样登陆目的地是IP, 入口也要是IP,但是user2没有被授权IP的登陆权限;

https://www.jb51.net/article/141702.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值