请问linux下的MYSQL数据库,如何导入一个已有的table.sql文件(MYSQL是刚安的,没有任何数据表)

请问linux下的MYSQL数据库,如何导入一个已有的table.sql文件(MYSQL是刚安的,没有任何数据表),第1张

shell>

mysql

db_name

<

tablesql

还可以用一个USE db_name语句启动文本文件。在这种情况下,不需要在命令行中指定数据库名:

shell>

mysql

<

text_file

如果正运行

mysql

,可以使用source或\命令执行SQL脚本文件:

mysql>

source

tablesql

mysql>

\

tablesql

MySQL默认的数据文件存储目录为/var/lib/mysql

例如将scott用户下所有表,导入到test用户下

1 exp scott/tiger file=scottdmp owner=scott

2 (1) 如果test用户下有scott的表,哪些需要先删除在导入

conn test/test

select 'drop table '||table_name||' purge;' from user_tables;

imp test/test file=scottdmp fromuser=scott touser=test

(2) 如果test用户下没有scott用户的表,可以直接导入

imp test/test file=scottdmp fromuser=scott touser=test

数据库的导出和导入很重要,一个网站什么比较值钱,就是数据,做好备份很重要。

1,查看一下原数据库

-bash-32$ psql -U playboy -d playboy //原数据库

Welcome to psql 8123, the PostgreSQL interactive terminal

type: copyright for distribution terms

h for help with SQL commands

for help with psql commands

g or terminate with semicolon to execute query

q to quit

playboy=> dt;

List of relations

Schema | Name | Type | Owner

--------+------------+-------+---------

public | contents | table | playboy

public | entries | table | playboy

public | properties | table | playboy

public | settings | table | playboy

public | test | table | playboy

(5 rows)

playboy=> q

2,导出数据库和表

-bash-32$ pg_dump -O playboy > /var/lib/pgsql/data/playboy2013sql //导出playboy数据库

-bash-32$ pg_dumpall > /var/lib/pgsql/data/all_databases2013sql //导出全部数据库

-bash-32$ pg_dump -O playboy -Ft -t test > /var/lib/pgsql/data/playboy_test2013tar //导出一张表tar的文件供pg_restore

-bash-32$ ls /var/lib/pgsql/data |grep 2013 //查看一下导好了

playboy2013sql all_databases2013sql playboy_test2013tar

3,创建新数据库,并导入

-bash-32$ psql -U playboy -d playboy //原数据库

Welcome to psql 8123, the PostgreSQL interactive terminal

Type: copyright for distribution terms

h for help with SQL commands

for help with psql commands

g or terminate with semicolon to execute query

q to quit

playboy=> dt;

List of relations

Schema | Name | Type | Owner

--------+------------+-------+---------

public | contents | table | playboy

public | entries | table | playboy

public | properties | table | playboy

public | settings | table | playboy

public | test | table | playboy

(5 rows)

playboy=> q

-bash-32$ createdb playboy_test -O playboy //创建一个归属playboy的数据库playboy_test

CREATE DATABASE

-bash-32$ pg_restore -d playboy_test /var/lib/pgsql/data/playboy_test2013tar //导入单表,

//将上面导入表删除后,在把playboy的数据库导入到playboy_test中去,权限归属playboy

-bash-32$ psql -d playboy_test -U playboy -f /var/lib/pgsql/data/playboy2013sql

set

SET

SET

COMMENT

SET

CREATE SEQUENCE

setval

--------

18

(1 row)

SET

SET

CREATE TABLE

CREATE SEQUENCE

setval

--------

4

(1 row)

CREATE TABLE

CREATE TABLE

CREATE SEQUENCE

setval

--------

3

(1 row)

CREATE TABLE

CREATE TABLE

ALTER TABLE

ALTER TABLE

ALTER TABLE

ALTER TABLE

ALTER TABLE

CREATE INDEX

REVOKE

REVOKE

GRANT

GRANT

-bash-32$ psql -U playboy -d playboy_test //登录到playboy_test

Welcome to psql 8123, the PostgreSQL interactive terminal

Type: copyright for distribution terms

h for help with SQL commands

for help with psql commands

g or terminate with semicolon to execute query

q to quit

playboy_test=> dt; //查看一下表,根playboy数据库一样的。

List of relations

Schema | Name | Type | Owner

--------+------------+-------+----------

public | contents | table | playboy

public | entries | table | playboy

public | properties | table | playboy

public | settings | table | playboy

public | test | table | playboy

(5 rows)

pgsql导入写法比较多,上面已经有二种了,在说一种

-bash-32$ psql -U playboy playboy_test < /var/lib/pgsql/data/playboy2013sql

第一:最简单的办法是使用phpmyadmin。

第二:通过该软件,在liunux下,导出所需的数据库,生成一个sql格式的文件。

第三:同样是使用该软件,在windows下,做一个导入 *** 作,将保存的sql格式文件导入进来,就可以了。

写一个SHELL,比如插入目录的文件名到数据库:

list=`ls -l |awk {'print $9'}`

#echo "$list\n"

for txtname in $list

do

sqlplus /nolog <<EOF

conn bill/sclc123@comm

insert into li_temp values('$txtname');

commit;

exit

EOF

done

以上就是关于请问linux下的MYSQL数据库,如何导入一个已有的table.sql文件(MYSQL是刚安的,没有任何数据表)全部的内容,包括:请问linux下的MYSQL数据库,如何导入一个已有的table.sql文件(MYSQL是刚安的,没有任何数据表)、linux下我要使用oracle的sqlload向数据库中导入数据。、linux怎样导入postgre数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/sjk/9430304.html

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

发表评论

登录后才能评论

评论列表(0条)

保存