
一、导出数据库用mysqldump命令(注意mysql的安装路径,即此命令的路径):
1、导出数据和表结构:
mysqldump -u用户名 -p密码 数据库名 > 数据库名sql
#/usr/local/mysql/bin/ mysqldump -uroot -p abc > abcsql
敲回车后会提示输入密码
2、只导出表结构
mysqldump -u用户名 -p密码 -d 数据库名 > 数据库名sql
#/usr/local/mysql/bin/ mysqldump -uroot -p -d abc > abcsql
注:/usr/local/mysql/bin/ ---> mysql的data目录
二、导入数据库
1、首先建空数据库
mysql>create database abc;
2、导入数据库
方法一:
(1)选择数据库
mysql>use abc;
(2)设置数据库编码
mysql>set names utf8;
(3)导入数据(注意sql文件的路径)
mysql>source /home/abc/abcsql;
方法二:
mysql -u用户名 -p密码 数据库名 < 数据库名sql
#mysql -uabc_f -p abc < abcsql
建议使用第二种方法导入。
注意:有命令行模式,有sql命令
没这么干过
mysql_list_tables
获取
所有表信息
返回指针
mysql_tablename
获取表名
myslq_num_rows函数来判断结果指针中的表的数目
<php
mysql_connect("localhost",
"mysql_user",
"mysql_password");
$result
=
mysql_list_tables("mydb");
for
($i
=
0;
$i
<
mysql_num_rows($result);
$i++)
printf
("Table:
%s\n",
mysql_tablename($result,
$i));
mysql_free_result($result);
>
这是手册上例子
后边的不用我说了吧
sql查询
mysql里面提供了很多方法来获取表结构和表列:如下方法
获得某表所有列的信息:
String sql = select from tname;//tname为某一表名
Connection conn = ;
Statement st = conncreateStatement();
ResultSet rs = strs = stexecuteQuery(sql);
ResultSetMetaData rsmd = rsgetMetaData();
int colcount = rsmdgetColumnCount();//取得全部列数
for(int i=0;i<colcount;i++){
String colname = rsmdgetColumnName(i);//取得全部列名
}
以上为某表字段具体查询,如果是查询表的信息,如在mysql服务器上那样的查询结果的话,可以用一下代码:
ResultSetexecuteQuery("show tables")可以的到所有的表信息。
ResultSetexecuteQuery("describe tname")可以得到表的字段信息。//tname为表名
用JDBC连接数据库,然后用sql语句。要导入mysql的驱动包。
importjavasql;
publicclassTestMySql{
staticConnectioncon=null;//声明Connection对象
staticStatementsql=null;
staticResultSetres=null;
publicstaticvoidmain(String[]args){
TestMySqlc=newTestMySql();
con=c();
try{
sql=con();
res=sql("selectfromdept");
//sql语句,我数据库里有张dept表
while(resnext()){//输出结果
Systemoutprint(resgetString(1)"
Systemoutprint(resgetString(2)"
Systemoutprint(resgetString(3));
Systemoutprintln();
}
}catch(e){
e();
}finally{
try{
if(res!=null){
resclose();
res=null;
}
if(sql!=null){
sqlclose();
sql=null;
}
if(con!=null){
conclose();
con=null;
}
}catch(e){
e();
}
}
}
publicConnection(){
try{
ClassforName("commysqljdbcDriver");
//加载oracleJDBC驱动
Systemoutprintln("数据库驱动加载成功");
}catch(e){
e();
}
try{//通过访问数据库的URL获取数据库连接对象
con=(
"jdbc:mysql://localhost:3306/mydata","root","qwer1234");
//mydata为mysql名字
Systemoutprintln("数据库连接成功");
}catch(e){
e();
}
returncon;//按方法要求返回一个Connection对象
}
}
/usr/local/mysql/bin/mysqldump -uroot -p --all-databases allsql按提示输入密码,回车就会开始导出,如果数据库比较大,会很长时间没有显示任何信息,但其实已经开始了。
MySQL数据库limit分页示例
1select from persons limit A, B;
解释:
A,查询起点
B,需要的行数
2示例:
select from persons limit 0 , 4;
解释:
起点位置为0,开始查询,返回4条数据。
select from persons limit 4 , 4;
解释:
起点为4 ,开始查询,返回4天数据。
3特殊:
select from persons limit 10;
意思是,起点为0,开始查询,返回10条记录。
与 select from persons limit 0,10; 是等价的。
4按规则排序的同时,进行分页:
select from persons
order by lastname
limit 0,10;
查询数据库中所有表名有两种方法:
1、select table_name from information_schematables where table_schema='当前数据库';
2、show tables;
其中,information_schema这张数据表保存了MySQL服务器所有数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权限等。
再简单点,这台MySQL服务器上,到底有哪些数据库、各个数据库有哪些表,每张表的字段类型是什么,各个数据库要什么权限才能访问,等等信息都保存在information_schema表里面。
扩展资料:
Mysql的INFORMATION_SCHEMA数据库包含了一些表和视图,提供了访问数据库元数据的方式。
元数据是关于数据的数据,如数据库名或表名,列的数据类型,或访问权限等。有些时候用于表述该信息的其他术语包括“数据词典”和“系统目录”。
下面对一些重要的数据字典表做一些说明:
SCHEMATA表:提供了关于数据库的信息。
TABLES表:给出了关于数据库中的表的信息。
COLUMNS表:给出了表中的列信息。
STATISTICS表:给出了关于表索引的信息。
USER_PRIVILEGES表:给出了关于全程权限的信息。该信息源自mysqluser授权表。
SCHEMA_PRIVILEGES表:给出了关于方案(数据库)权限的信息。该信息来自mysqldb授权表。
TABLE_PRIVILEGES表:给出了关于表权限的信息。该信息源自mysqltables_priv授权表。
COLUMN_PRIVILEGES表:给出了关于列权限的信息。该信息源自mysqlcolumns_priv授权表。
CHARACTER_SETS表:提供了关于可用字符集的信息。
COLLATIONS表:提供了关于各字符集的对照信息。
COLLATION_CHARACTER_SET_APPLICABILITY表:指明了可用于校对的字符集。
TABLE_CONSTRAINTS表:描述了存在约束的表。
KEY_COLUMN_USAGE表:描述了具有约束的键列。
ROUTINES表:提供了关于存储子程序(存储程序和函数)的信息。此时,ROUTINES表不包含自定义函数(UDF)。
VIEWS表:给出了关于数据库中的视图的信息。
TRIGGERS表:提供了关于触发程序的信息。
以上就是关于怎么提取MYSQL数据库的所有数据到另一个MYSQL数据库全部的内容,包括:怎么提取MYSQL数据库的所有数据到另一个MYSQL数据库、php获取mysql数据库里面的所有数据表信息、java 获取mysql 某个数据库中所有表及表的列的信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)