SQL语句
创建数据库:CREATE DATABASE “库名”: //用于创建一个库,需要指定数据库名称作为参数。
创建表:create table “表名” (字段1 名称 类型, 字段2 名称 类型, ……, PRIMARY KEY(主键名))
删除表:DROP TABLE 库名.表名
删除库:DROP DATABASE 库名
(向已存在的表内)插入数据记录:INSERT INTO 表名 (字段1 ,字段2,……) VALUES (字段1的值,字段2的值,……);
查询数据记录:SELECT 字段名1,字段名2,… FROM 表名 WHERE 条件表达式
表示所有字段时,可以使用通配符 “ * ” ,若显示所有的数据记录则可以省略WHERE 条件子句。
修改数据记录:UPDATE 表名 SET 字段名1=字段值1 [字段名2=字段值2] WHERE 条件表达式
删除数据记录:DELETE FROM 表名 WHERE 条件表达式(delete from users where user_name=‘lisi’;)
授予权限:GRANT 权限列表 ON 库名.表名 TO 用户名@来源地址[IDENTIFIED BY ‘密码’]
使用GRANT时需注意以下事项:
1、权限列表:用于列出授权使用的各种数据库操作,以逗号分隔,如“select,insert,update”,使用“all”表示所有权限,可授权执行任何操作。
2、库名.表名:用于指定授权操作的库和表的名称,其中可以使用通配符“*”,auth.*表示auth中所有的表
3、用户名@来源地址:用于指定用户名称和允许访问的客户及地址,即谁可以链接,能从那里链接
来源地址可以是域名、IP地址、还可以使用“%”通配符,表示莫格区域或网段内的所有地址,如“%.abc.com”、“192.168.1.%”等
4、IDENTIFIED BY:用于设置用户连接数据库时 所使用的密码字符串,在新建用户时,若省略
“IDENTIFIED BY”部分 则用户密码为空。
使用客户机访问数据库:mysql -u ynuser -p123 -h 192.168.0.2
查看指定用户权限:SHOW GRANTS FOR 用户名@来源地址
撤销权限:REVOKE 权限列表 ON 库名.表名 FROM 用户名@来源地址
修改记录或更改用户密码时,一定要刷新用户授权信息。
刷新数据库授权信息:FLUSH PRIVILEGES
linux命令行环境执行,数据库用户密码更改:
mysqladmin -u root -p password ‘123’
数据库备份:
导出操作:
mysqldump [选项] 库名 [表名1] [表名2] …… > /备份路径/备份文件名
格式2:
mysqldump [选项] --databases 库名1 库名2 ……> /备份路径/备份文件名
格式3:
mysqldump [选项] --all-databases > /备份路径/备份文件名
恢复数据库:mysql [选项] [库名] [表名] < /备份路径/备份文件名
查看表类型:show create table users;
数据库引擎:Mysql数据库老版本中,使用的是TYPE而不是ENGINE,例如:TYPE=MYISAM。Mysql5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE是首选的语法。
数据库老版本中,使用的是TYPE而不是ENGINE,例如:TYPE=MYISAM。Mysql5.1为向下兼容而支持这个语法,但TYPE现在被轻视,而ENGINE是首选的语法。
一般的ENGINE选项是不必要的,除非默认已经被改变,InnoDB是默认的存储引擎。