簡體   English   中英

Mysql導入導出的sql文件

[英]Mysql import an exported sql file

我正在嘗試從其他站點還原備份的數據庫。

.sql文件的開頭包含

--
-- Database: `information_schema`
--
CREATE DATABASE `information_schema` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE `information_schema`;

我收到了錯誤

1044 - 用戶'root'@'localhost'拒絕訪問數據庫'information_schema'

來自phpmyadmin。 如果我注釋掉數據庫的創建,它仍然說我不能使用information_schema。

我的所有三個根都設置為ALL PRIVILEGES

如何將sql文件導入phpmyadmin?

information_schema是mysql系統的數據庫部分,你不應該替換這個數據庫...

您無法恢復information_schema。 它是內部數據庫,其中mysql保留所有其他數據庫的所有模式。 要恢復它,還原所有其他數據庫,一切都將返回到它。

由RolandoMySQLDBA編輯2012-01-06 16:15 EDT

INFORMATION_SCHEMA中的每個表都是臨時表

information_schema.schemata的示例

mysql> show create table information_schema.schemata\G
*************************** 1. row ***************************
       Table: SCHEMATA
Create Table: CREATE TEMPORARY TABLE `SCHEMATA` (
  `CATALOG_NAME` varchar(512) NOT NULL DEFAULT '',
  `SCHEMA_NAME` varchar(64) NOT NULL DEFAULT '',
  `DEFAULT_CHARACTER_SET_NAME` varchar(32) NOT NULL DEFAULT '',
  `DEFAULT_COLLATION_NAME` varchar(32) NOT NULL DEFAULT '',
  `SQL_PATH` varchar(512) DEFAULT NULL
) ENGINE=MEMORY DEFAULT CHARSET=utf8
1 row in set (0.02 sec)

/ var / lib / mysql中沒有INFORMATION_SCHEMA的顯示文件夾

要證明information_schema已恢復為Mathieu Dumoulin指定的,請執行以下操作:

  • 在mysql SHOW DATABASES; SELECT schema_name FROM information_schema.schemata;
  • 在OS中, mkdir /var/lib/mysql/matt
  • 在mysql SHOW DATABASES; SELECT schema_name FROM information_schema.schemata;

數據庫matt立即實現。

對於重新加載的每個數據庫和表,這都適用。

如果可能的話,我建議不要使用PHPMyAdmin。 相反,應該使用MySQL命令行工具。

特別是,您應該學會使用mysqlimport工具,該工具旨在促進此過程。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM