增加新用户
格式: grant select on 数据库.* to 用户名 @登录主机 identified by '密码'
举例:
例 1: 增加一个用户 test1 密码为 abc, 让他可以在任何主机上登录, 并对所有数据库有
查询, 插入, 修改, 删除的权限. 首先用以 root 用户连入 MySQL, 然后键入以下命令:
MySQL>grant select,insert,update,delete on *.* to [email protected] identified by 'mysql';
或者
grant all privileges on *.* to [email protected] identified by 'mysql';
然后刷新权限设置.
flush privileges;
例 2: 如果你不想 root 有密码操作数据库 "mydb" 里的数据表, 可以再打一个命令将密码消掉.
grant select,insert,update,delete on mydb.* to [email protected] identified by '';
删除用户
[email protected]:~$ MySQL -u 用户名 -p 密码
- MySQL>delete from user where user='用户名' and host='localhost';
- MySQL>flush privileges;
- // 删除用户的数据库
- MySQL>drop database dbname;
数据库操作
显示所有的数据库
MySQL> show databases;(注意: 最后有个 s)
创建数据库
MySQL> create database test;
连接数据库
MySQL> use test;
查看当前使用的数据库
MySQL> select database();
当前数据库包含的表信息
MySQL> show tables; (注意: 最后有个 s)
删除数据库
MySQL> drop database test;
表操作
备注: 操作之前使用 "use < 数据库名 >" 应连接某个数据库.
建表
命令: create table < 表名 > (< 字段名 1> < 类型 1> [,..< 字段名 n> < 类型 n>]);
例子:
- MySQL> create table MyClass(
- > id int(4) not null primary key auto_increment,
- > name char(20) not null,
- > sex int(4) not null default '0',
- > degree double(16,2));
获取表结构
命令: desc 表名, 或者 show columns from 表名
例子:
- MySQL> describe MyClass
- MySQL> desc MyClass;
- MySQL> show columns from MyClass;
删除表
命令: drop table < 表名 >
例如: 删除表名为 MyClass 的表
MySQL> drop table MyClass;
插入数据
命令: insert into < 表名 > [( < 字段名 1>[,..< 字段名 n> ])] values ( 值 1 )[, ( 值 n )]
例子:
MySQL> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
查询表中的数据
查询所有行
MySQL> select * from MyClass;
查询前几行数据
例如: 查看表 MyClass 中前 2 行数据
MySQL> select * from MyClass order by id limit 0,2;
或者
MySQL> select * from MyClass limit 0,2;
删除表中数据
命令: delete from 表名 where 表达式
例如: 删除表 MyClass 中编号为 1 的记录
MySQL> delete from MyClass where id=1;
修改表中数据
命令: update 表名 set 字段 = 新值,... where 条件
MySQL> update MyClass set name='Mary' where id=1;
在表中增加字段
命令: alter table 表名 add 字段 类型 其他;
例如: 在表 MyClass 中添加了一个字段 passtest, 类型为 int(4), 默认值为 0
MySQL> alter table MyClass add passtest int(4) default '0'
更改表名
命令: rename table 原表名 to 新表名;
例如: 在表 MyClass 名字更改为 YouClass
MySQL> rename table MyClass to YouClass;
更新字段内容
命令: update 表名 set 字段名 = 新内容
update 表名 set 字段名 = replace(字段名, '旧内容', '新内容');
例如: 文章前面加入 4 个空格
update article set content=concat(' ', content);
数据库导入导出
从数据库导出数据库文件
使用 "mysqldump" 命令
首先进入 DOS 界面, 然后进行下面操作.
1) 导出所有数据库
格式: mysqldump -u [数据库用户名] -p -A>[备份文件的保存路径]
2) 导出数据和数据结构
格式: mysqldump -u [数据库用户名] -p [要备份的数据库名称]>[备份文件的保存路径]
举例:
例 1: 将数据库 mydb 导出到 e:\MySQL\mydb.sql 文件中.
打开开始 -> 运行 -> 输入 "cmd", 进入命令行模式.
c:\> mysqldump -h localhost -u root -p mydb>e:\MySQL\mydb.sql
然后输入密码, 等待一会导出就成功了, 可以到目标文件中检查是否成功.
例 2: 将数据库 mydb 中的 mytable 导出到 e:\MySQL\mytable.sql 文件中.
c:\> mysqldump -h localhost -u root -p mydb mytable>e:\MySQL\mytable.sql
例 3: 将数据库 mydb 的结构导出到 e:\MySQL\mydb_stru.sql 文件中.
c:\> mysqldump -h localhost -u root -p mydb --add-drop-table>e:\MySQL\mydb_stru.sql
备注:-h localhost 可以省略, 其一般在虚拟主机上用.
3) 只导出数据不导出数据结构
格式:
mysqldump -u [数据库用户名] -p -t [要备份的数据库名称]>[备份文件的保存路径]
4) 导出数据库中的 Events
格式: mysqldump -u [数据库用户名] -p -E [数据库用户名]>[备份文件的保存路径]
5) 导出数据库中的存储过程和函数
格式: mysqldump -u [数据库用户名] -p -R [数据库用户名]>[备份文件的保存路径]
从外部文件导入数据库中
1) 使用 "source" 命令
首先进入 "mysql" 命令控制台, 然后创建数据库, 然后使用该数据库. 最后执行下面操作.
MySQL>source [备份文件的保存路径]
2) 使用 "<" 符号
首先进入 "mysql" 命令控制台, 然后创建数据库, 然后退出 MySQL, 进入 DOS 界面. 最后执行下面操作.
MySQL -u root -p < [备份文件的保存路径]
来源: http://www.bubuko.com/infodetail-3215901.html