一.从数据库导出数据
注意这些语句的执行是在在没进入mysql命令行之前,在mysql命令行不行
C:Windowssystem32>导出命令
而不是
Mysql>导出命令
1.导出整个数据库(包括所有表结构与数据)
Mysqldump -h127.0.0.1 -P3306 -uroot -p 数据库名称>xx.sql
输入密码:
或者直接输入密码
Mysqldump -h127.0.0.1 -P3306 -uroot -p密码 数据库名称>xx.sql
2.导出数据库里所有表的结构(不包括表里的数据)
Mysqldump -h127.0.0.1 -P3306 -uroot -p密码 -d 数据库名>XX.sql
3.导出某个或多个数据库表的数据(结构+内容)
Mysqldump -h127.0.0.1 -P3306 -uroot -p密码 数据库名 表名1 表名2 等>XX.sql
4.导出某个数据库表的结构
Mysqldump -h127.0.0.1 -P3306 -uroot -p密码 -d 数据库名 tb1 tb2 .. >XXX.sql
将外界sql文件导入数据库
向数据库导入文件一般是sql文件,它里面包含的是表的信息,没有数据库信息,即使导出整个数据库,也没有数据库名的信息,所以sql文件里没有有关数据库名的信息(注释里有),在导入前一般得先建一个数据库,然后选定这个数据库,在mysql命令行里执行导入命令
Mysql>source sql文件路径(D:test.sql)
一次清除数据库表里的所有数据
先导出
C:Windowssystem32>mysqldump -uroot -p密码--no-data 数据库名>xx.sql
其实与只导出表结构一样
然后在创建数据库
Create database 数据库名
在进入sql命令行导入xx.sql
mysql> source xx.sql
修改mysql密码
方法1情况:在没有进入Mysql时需要知道mysql密码
C:Windowssystem32>mysqladmin -uroot -p原密码 password 新密码
方法2:进入了mysql了,修改密码,不需要知道mysql密码
use mysql
update user set password=PASSWORD('新密码') where user='root'
即修改mysql数据库里的user表
使其它机器也能连接上mysql服务器
grant all privileges on *.* to root@"%" identified by '123456' with grant option; flush privileges;
它的意思是给从任意ip地址连接的用户名为root,
密码为123456的用户赋予所有的权限。其中的"%"为任意的ip地址,如果想设为特定的值也可以设定为特定的值。