diff --git a/bin/importPdoMetadata.php b/bin/importPdoMetadata.php
new file mode 100755
index 0000000000000000000000000000000000000000..70c690613b557b00f15d1430f075ea9ad5d8c11b
--- /dev/null
+++ b/bin/importPdoMetadata.php
@@ -0,0 +1,25 @@
+<?php
+$baseDir = dirname(dirname(__FILE__));
+
+require_once $baseDir . DIRECTORY_SEPARATOR . 'lib' . DIRECTORY_SEPARATOR . '_autoload.php';
+require_once $baseDir . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php';
+
+# Iterate through configured metadata sources and ensure
+# that a PDO source exists.
+foreach ($config['metadata.sources'] as $s) {
+	# If pdo is configured, create the new handler and add in the metadata sets.
+	if ("pdo" === $s['type']) {
+		$mdshp = new SimpleSAML_Metadata_MetaDataStorageHandlerPdo($s);
+		$mdshp->initDatabase();
+		foreach (glob("metadata/*.php") as $filename) {
+			$metadata = array();
+			require_once $filename;
+			$set = basename($filename, ".php");
+			echo "importing set '$set'..." . PHP_EOL;
+			foreach ($metadata as $k => $v) {
+				echo "\t$k" . PHP_EOL;
+				$mdshp->addEntry($k, $set, $v);
+			}
+		}
+	}
+}
\ No newline at end of file