您的位置:首页 > 数据库 > MySQL

mysql创建和授权用户+配置文件位置+大小写敏感问题

2014-01-27 19:07 429 查看
一、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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: