MySQL学习笔记
2015-08-14 09:31
597 查看
MySQL是一个小型关系型数据库管理系统,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。除此以外,在Android开发中,使用SQLite或者MySQL都可以作为数据库使用,非常方便高效。
由于我是新手,没有数据库基础,也没有太多关于数据存储的概念,在此写文用以记录,供以后参考使用。
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命令即可。
问题:在使用新建用户登录后,执行创建数据库语句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
创建表语句:
CREATE TABLE T_USER (
ID INTEGER PRIMARY KEY AUTO_INCREMENT,
NAME VARCHAR(20),
PASSWORD VARCHAR(20)
);
注意:刚开始我一直出错,因为之前做安卓开发用sqlite时,使用AUTOINCREMENT为id设置自增操作,但MySQL必须使用AUTO_INCREMENT才可以。
由于我是新手,没有数据库基础,也没有太多关于数据存储的概念,在此写文用以记录,供以后参考使用。
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才可以。
相关文章推荐
- mysql的XA与innodb_support_xa
- Mysql开启远程授权步骤
- 优化MySQL数据库性能
- mysql忘记root密码解决办法
- MYSQL三大范式
- mysql慢日志设置
- [MySql]常用的总结
- mysql各版本区别
- mysql各版本区别
- mysql-5.5.36怎么打开批处理功能? 2步搞定。
- mysql修改默认的环境的字符集为utf-8
- MySQL备份与恢复之保证数据一致性(5)
- MYSQL 创建函数出错的解决方案
- MySQL 5.6 中的 TIMESTAMP 和 explicit_defaults_for_timestamp 参数
- MySQL 5.6 中 TIMESTAMP有那些变化
- Mysql学习心得之插入、更新、删除记录
- Mysql分库分表方案
- MAC安装MYSQL
- Mysql 64位安装
- mysql数据库只能本地连接,其他电脑不能连接