怎么提取MYSQL数据库的所有数据到另一个MYSQL数据库

怎么提取MYSQL数据库的所有数据到另一个MYSQL数据库,第1张

一、导出数据库用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 某个数据库中所有表及表的列的信息等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9763729.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存