diff --git a/src/bin/scripts/t/100_vacuumdb.pl b/src/bin/scripts/t/100_vacuumdb.pl
index eccfcc54a1..2e2863bce3 100644
--- a/src/bin/scripts/t/100_vacuumdb.pl
+++ b/src/bin/scripts/t/100_vacuumdb.pl
@@ -111,7 +111,9 @@ $node->safe_psql(
   INSERT INTO funcidx VALUES (0),(1),(2),(3);
   CREATE INDEX i0 ON funcidx ((f1(x)));
   CREATE SCHEMA "Foo";
-  CREATE TABLE "Foo".bar(id int);
+  CREATE SCHEMA "Bar";
+  CREATE TABLE "Foo".baz(id int);
+  CREATE TABLE "Bar".baz(id int);
 |);
 $node->command_ok([qw|vacuumdb -Z --table="need""q(uot"(")x") postgres|],
 	'column list');
@@ -157,12 +159,23 @@ $node->issues_sql_like(
 	'vacuumdb --table --min-xid-age');
 $node->issues_sql_like(
 	[ 'vacuumdb', '--schema', '"Foo"', 'postgres' ],
-	qr/VACUUM \(SKIP_DATABASE_STATS\) "Foo".bar/,
+	qr/VACUUM \(SKIP_DATABASE_STATS\) "Foo".baz/,
 	'vacuumdb --schema');
+$node->issues_sql_like(
+	[ 'vacuumdb', '--schema', '"Foo"', '--schema', '"Bar"', 'postgres' ],
+	qr/VACUUM\ \(SKIP_DATABASE_STATS\)\ "Foo".baz
+		.*VACUUM\ \(SKIP_DATABASE_STATS\)\ "Bar".baz
+	/sx,
+	'vacuumdb multiple --schema switches');
 $node->issues_sql_like(
 	[ 'vacuumdb', '--exclude-schema', '"Foo"', 'postgres' ],
-	qr/(?:(?!VACUUM "Foo".bar).)*/,
+	qr/^(?!.*VACUUM \(SKIP_DATABASE_STATS\) "Foo".baz).*$/s,
 	'vacuumdb --exclude-schema');
+$node->issues_sql_like(
+	[ 'vacuumdb', '--exclude-schema', '"Foo"', '--exclude-schema', '"Bar"', 'postgres' ],
+	qr/^(?!.*VACUUM\ \(SKIP_DATABASE_STATS\)\ "Foo".baz
+	| VACUUM\ \(SKIP_DATABASE_STATS\)\ "Bar".baz).*$/sx,
+	'vacuumdb multiple --exclude-schema switches');
 $node->command_fails_like(
 	[ 'vacuumdb', '-N', 'pg_catalog', '-t', 'pg_class', 'postgres', ],
 	qr/cannot vacuum specific table\(s\) and exclude schema\(s\) at the same time/,
