mysql创建和授权用户+配置文件位置+大小写敏感问题
一、mysql创建和授权用户:
1、传统方式:
a、create user 'testuser'@'localhost' identified by '123456'; // 用户名:testuser2 ,密码是 123456
b、create database test; //创建test数据库
c、grant all on test.* to 'testuser'@'localhost'; //授予testuser 对与 test数据库的所有操作权限
2、一步到位方式:grant all on test.* to 'testuser'@'localhost' identified by '123456' //创建数据库、授权和创建用户一步完成。
3、flush privileges; //感觉没flush照样生效了,但,多写一下,防止出现蛋疼问题吧~
二、删除用户
drop user testuser@localhost; //也可以用delete mysql数据库中的user表对应字段
三、删除数据库和数据表
drop database 数据库名;
drop table 数据表名;
四、改密码
update mysql.user set password=password('新密码') where User="test" and Host="localhost"; //在root用户下才有权限修改,这个没试~
flush privileges;
五、补充一些mysql文件的位置
ubuntu下一般可以 /etc/mysql/my.cnf 文件里看到datadir, 默认位置在/var/lib/mysql里(需管理员权限查看,su root)
一般建一个表,数据库系统会自动生成3个文件:
*.frm 是描述表结构;
*.MYD 是保存表的数据;
*.MYI 是表的索引;
MYSQL的默认DB引擎是innodb
但innodb表没有没有myd和.myi,其数据文件对应于ibdata1。
要让.myd和.myi的数据库文件也出现,则转换表类型innodb为myisam.
六、mysql大小写敏感问题,自己实践失败,待后来人指点
大伙可能都碰到过,win下开发,linux上部署,然后常常数据库找不到表而报错的问题,究其根本,大小写敏感了。
vim /etc/my.cnf ,然后添加下面一行
lower_case_table_names = 1 //注意别复制错了
sudo service mysql restart //重启mysql
需要注意的是:要在重启后,再导入包含大小写的表。 //如果先导入包含大小写表,再修改my.cnf则会出问题
七、创建数据库并设置utf8
UTF8:create database if not exists mydb default charset utf8 collate utf8_general_ci;
GBK: create database if not exists mydb default charset gbk collate gbk_chinese_ci;
补充:
上面localhost表明只能在本地连接数据库,如果换成“%”,则网络到处可连接,比较危险。
grant select,insert,update,delete on testdatabase.* to 'test1'@'%' Identified by 'abc'; //可以指定某些操作
相关链接:
http://blog.163.com/cabbyang@126/blog/static/3390796920106124161765/
http://www.cnblogs.com/fly1988happy/archive/2011/12/15/2288554.html
http://www.jb51.net/article/15882.htm
http://blog.163.com/linfeng_0212/blog/static/62221382011526112041756/
http://jazka.blog.51cto.com/809003/330418 //讲mysql error1146
2、解构技能,找出实现80%效果的那20%
3、不要一心二用
4、练习练习再练习!然后获得即时反馈
5、坚持,不要在低谷期放弃