安装配置好mysql服务之后,我们一般做测试用root用户,其实我们要养成习惯新建自己的用户来进行各种学习。新建一个用户的命令:
insert into mysql.user(Host,User,Password) values("localhost","demoName",password("123456"));
其中mysql.user中mysql是系统数据库,user表里面默认的只有一个root用户,对于密码需要加密所以要用password()方法来把自己的密码加密,经过加密后
select * from mysql.user;
查询出来的就是经过加密的,否则就是存入你输入的字符串。
如此修改密码也简单
update mysql.user set Password=password("new password");
一般修改,添加用户或者修改密码之后要执行 flush privileges;否则赋值权限的时候会找不到用户。
删除用户 delete from msyql.user where User="demoName" and Host="localhost";
一般新建用户之后,默认的能够看到的database就只有一个系统的information_schema;其他的表没有赋权限给用户用户是不可见的。所以下一步给用户赋权限。比如root登陆的时候里面已经有了demotim数据库。那么只要把demotim数据库的权限赋给demoName用户。
grant all privileges on demotim.* to demoName@localhost identified by "password";
把demotim数据库的所有权限给demoName用户,identified by 用户的密码;当然也可以只赋予一部分权限
grant select,update on demotim.* to demoName@localhost identified by "password";
这个只是赋予了查询和更新的权限。
好像新建的用户不能直接create database!!
然后用demoName用户登录到demotim数据库
msyql -u demoName -p demotim
输入密码OK
创建表
create table user(userid int not null primary key auto_increment,name varchar(20),password varchar(20))
在这种主键自增中插入数据
insert into user values("","newName","newPassword");
以下写法会报不匹配错误:insert into user values("newName","newPassword");
查看表的结构:describe user
另外,有时msyql不能正常启动,首先要看msyql服务是否启动。在mysql中my.ini文件也很重要,端口等各种配置在里面可以设置