MySQL学习笔记

MySQL 用户设置

如果需要添加 MySQL 用户,只需要在 MySQL 数据库中的 user 表添加新用户即可。

以下为添加用户的的实例,用户名为guest,密码为guest123,并授权用户可进行 SELECT, INSERT 和 UPDATE操作权限:

--MySQL用户设置

INSERT INTO user (host, user, password, select_priv, insert_priv, update_priv)
VALUES ('localhost', 'guest', PASSWORD('guest'), 'Y', 'Y', 'Y');

 

 在添加用户时,使用MySQL提供的 PASSWORD() 函数来对密码进行加密。

4 warnings 出现的原因:

mysql 用户表的中某些字段不能为空,没有默认值,其实是操作错误,mysql 添加用户是不能这样直接 insert user 表的。

解决方法:

正确的添加用户方法:

GRANT USAGE ON *.* TO 'guest01'@'localhost' IDENTIFIED BY '123456' WITH GRANT OPTION;

用户:guest01,密码:123456,这样就添加了一个新的用户,不会出以上的错误了。

 

 

select user, host, password from user where user='guest01';

 

 ______________________________________________________________________________________________________________________________________

用 insert 添加用户时,可能会报错:

ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value

my-default.ini中有一条语句:

指定了严格模式,为了安全,严格模式禁止通过 insert 这种形式直接修改 mysql 库中的 user 表进行添加新用户

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

将 STRICT_TRANS_TABLES 删掉之后即可使用 insert 添加

 

另外一种添加用户的方法: 

通过SQL的 GRANT 命令,命令会给指定数据表添加用户 guest02 ,密码为 123456 。

 

 

 

常用的用来管理MySQL的命令:

  • USE 数据库名 :选择要操作的MySQL数据库,使用该命令后所有MySQL命令都只针对该数据库。
  • SHOW DATABASES: 列出 MySQL 数据库管理系统的数据库列表。
  • SHOW TABLES: 显示指定数据库的所有表,使用该命令前需要使用 use 命令来选择要操作的数据库。
  • SHOW COLUMNS FROM 数据表: 显示数据表的属性,属性类型,主键信息 ,是否为 NULL,默认值等其他信息。

  

 

  • SHOW INDEX FROM 数据表: 显示数据表的详细索引信息,包括PRIMARY KEY(主键)
  • SHOW TABLE STATUS LIKE 数据表\G: 该命令将输出MySQL数据库管理系统的性能及统计信息。
SHOW TABLE STATUS  FROM mysql;   # 显示数据库 mysql 中所有表的信息
SHOW TABLE STATUS from mysql LIKE 'user%';     # 表名以W3Cschool开头的表的信息
SHOW TABLE STATUS from mysql LIKE 'user%'\G;   # 加上 \G,查询结果按列打印
 
 
 
 
 
 
 
 
 
 
 
posted @ 2019-09-20 09:54  Streamice96  阅读(194)  评论(0编辑  收藏  举报