127 连接数据后的基本操作
一、用户信息查看
前提:连接上数据库以后
-
查看当前登录的用户:
select user();
-
root权限下可以查看所有用户信息
select * from mysql.user
;显示所有的user的信息,一大堆的字符* from mysql.user \G
;显示所有用户自己的字段select user,password,host from mysql.user
显示用户的user,password,host这三个字段 -
root登陆下,删除游客(操作后要重新启动mysql服务)
可以先查看所有的游客用户,然后删除某一个游客用户,where +条件
delect from mysql.user where user='';
二、修改root管理用户的密码
-
在没有登录的情况下去修改
mysqladmin -u用户名 -p旧密码 -h域名 password "新密码"
mysql -uroot -p123 -hlocalhost password "456" 将123密码改为456
-
在root登录后修改
mysql> set password for 用户名@localhost = password('新密码');
mysql> set password for root@localhost = password('123');
三、数据库配置
3.1为什么要进行编码配置
- 通过配置文件统一配置的目的:统一管理服务端(msysql)、客户端(client)
3.2 编码配置后的结果
-
由于我们再登录mysql的时候,创建数据库默认的编码都是为‘’latin1‘’,这个时候当我们再数据库中存储中文的时候会导致乱码问题
-
通过配置文件将mysql的服务端的编码设置为‘utf8’,以后创建数据库的时候默认编码为‘utf8’,而不会导致乱码问题
3.3 配置流程
-
再mysql安装的根目录下创建配置文件my.ini
-
设置配置文件内容并保存
[mysqld] # 服务器配置 port=3306 # 可以修改数据库默认端口(如果数据库端口被其他软件占用) character-set-server=utf8 # 编码格式 collation-server=utf8_general_ci # 排序方式(默认跟编码格式走) [client] # mysql自己的客户端叫[mysql],配置[client]即配置了[mysql],也配置了其他存在方式的客户端,比如Navicat可视化客户端 default-character-set=utf8 # 编码格式
-
重启数据服务
四、登录数据库后,创建用户操作
特殊表(mysql.user)基本操作:登录root权限以后,创建的所有用户权限都是存在mysql.user
特殊表里面的
4.1为特定的数据库分配该数据库的操作权限的用户
- all:所有权限
- database.* : database库中的所有表
- xxx@’localhost‘ : 本机可以通过xxx用户登录
- identified by ‘xxx123’ : xxx用户的密码为xxx123
grant all on database.* to xxx@'localhost' identified by 'xxx123';
- select 、delete、update、insert、drop、alter、:指定的权限
- database.* : database库中的所有表
- xxx@’localhost‘ : 本机可以通过xxx用户登录
- identified by ‘xxx123’ : xxx用户的密码为xxx123
grant select.delete,update,insert ,drop,alter on database.* to xxx@'localhost' indentified by 'xxx123';
4.2 撤销权限
语法:revoke 权限1,权限2,··· on 数据库名.表名(*全部表) from 用户@'主机名';
实例:revoke all on database.* from xxx@'localhost';
4.3 删除该用户
drop user 用户名@'主机名'