MySQL学习笔记

       MySQL是一个小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。除此以外,在Android开发中,使用SQLite或者MySQL都可以作为数据库使用,非常方便高效。

由于我是新手,没有数据库基础,也没有太多关于数据存储的概念,在此写文用以记录,供以后参考使用。

1、创建MySQL用户

在下载MySQL 5.5版本并安装完成后,在开始菜单中会有MySQL 5.5 Command Line Client,打开后会提示设置密码,以我为例,初始密码设置为fukang,此时用户默认为root用户,即最高权限。可如果我们不想以最高权限使用,就要回归原始命令行进行新用户的创建和登录操作。

1、win+R——cmd——cd C:\Program Files\MySQL\MySQL Server 5.5\bin  (cd进入mysql安装目录下的bin目录)
2、输入命令mysql -uroot -pfukang 注意:此处-u后面接root用户名 -p接之前设置的初始密码,最后不加分号
3、输入命令create user 'fk_name'@'localhost' identified by 'fk_pass' ;创建用户名为fk_name,密码为fk_pass的用户,注意此处@前后不允许有空格。
4、输入命令exit; 此时进入步骤1的状态,输入命令mysql -ufk_name -pfk_pass 输入新建的用户密码进行登录,成功!



附:为方便起见,在环境变量中新建变量名MYSQL_HOME,变量值C:\Program Files\MySQL\MySQL Server 5.5,确定保存;编辑path变量,在最后加上%MYSQL_HOME%\bin;即可完成环境变量配置,以后直接打开cmd输入mysql命令即可。


2、新建数据库mydb

创建数据库语句: CREATE DATABASE  MYDB ;  深色字为数据库名,不区分大小写,自定义即可。

问题:在使用新建用户登录后,执行创建数据库语句CREATE DATABASE MYDB; 
出现如下错误代码:ERROR 1044 (42000): Access Dinied for user 'fukang'@'localhost' to database 'mydb';

解决:查询了一些资料,发现是授权问题,经实验,找到解决方法如下:
1、exit;退出当前登录的新建用户;
2、mysql -uroot -pfukang进入root用户;
3、执行命令 grant all privileges on *.* to 'fukang'@'%' identified by 'fukang'; 其中 *.*即所有数据库的所有表; '%'表示所有主机,授权给命令中的fukang用户
4、第二种授权方法,效果同3:grant all privileges on *.* to 'fukang'@'%' with grant option;
5、执行命令 flush privileges; 刷新授权,然后exit; 退出root用户,重新登录fukang用户 mysql -ufukang -pfukang
6、执行命令 CREATA DATABASE MYDB; 成功创建数据mydb!
ps:如果不授权,只能本地连接即使用localhost或者127.0.0.1连接,只有授权后才可以任意主机连接,如:192.168.0.31

3、创建数据库表t_user

创建一个简单的只有三个字段的表,integer类型的id,可变字符串类型name,可变字符串类型password
创建表语句:
CREATE TABLE T_USER
  ID INTEGER PRIMARY KEY AUTO_INCREMENT,
  NAME VARCHAR(20),
  PASSWORD VARCHAR(20)
);
注意:刚开始我一直出错,因为之前做安卓开发用sqlite时,使用 AUTOINCREMENT为id设置自增操作,但MySQL必须使用 AUTO_INCREMENT才可以。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值