@nocobase/plugin-backups 2.0.56 → 2.1.0-beta.36
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +10 -10
- package/dist/client/index.js +1 -1
- package/dist/externalVersion.js +9 -10
- package/dist/node_modules/archiver/index.js +11 -11
- package/dist/node_modules/archiver/package.json +1 -1
- package/dist/node_modules/cron-parser/lib/parser.js +1 -1
- package/dist/node_modules/cron-parser/package.json +1 -1
- package/dist/node_modules/fs-extra/lib/index.js +1 -1
- package/dist/node_modules/fs-extra/package.json +1 -1
- package/dist/node_modules/semver/index.js +1 -1
- package/dist/node_modules/semver/package.json +1 -1
- package/dist/node_modules/yauzl/index.js +1 -1
- package/dist/node_modules/yauzl/package.json +1 -1
- package/dist/server/adapters/database.js +13 -15
- package/package.json +2 -2
|
@@ -102,6 +102,7 @@ class MySQLAdapter extends BaseDBAdapter {
|
|
|
102
102
|
try {
|
|
103
103
|
return (0, import_child_process.execSync)(`${cmd} --version`).toString();
|
|
104
104
|
} catch (_error) {
|
|
105
|
+
return void 0;
|
|
105
106
|
}
|
|
106
107
|
}
|
|
107
108
|
async backup(dir, skipFdw = false) {
|
|
@@ -154,11 +155,7 @@ class MySQLAdapter extends BaseDBAdapter {
|
|
|
154
155
|
|
|
155
156
|
`);
|
|
156
157
|
}
|
|
157
|
-
(0, import_promises.pipeline)(
|
|
158
|
-
mysqldumpProcess.stdout,
|
|
159
|
-
escapeTransform,
|
|
160
|
-
writeStream
|
|
161
|
-
).then(() => {
|
|
158
|
+
(0, import_promises.pipeline)(mysqldumpProcess.stdout, escapeTransform, writeStream).then(() => {
|
|
162
159
|
writeStream.write("\n/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;\n");
|
|
163
160
|
writeStream.write("/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;\n");
|
|
164
161
|
writeStream.write("/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;\n");
|
|
@@ -170,8 +167,8 @@ class MySQLAdapter extends BaseDBAdapter {
|
|
|
170
167
|
try {
|
|
171
168
|
const fetchFederatedTablesCommand = `mysql -u ${username} -h ${host} ${port ? `-P ${port}` : ""} --protocol=tcp -D ${database} -e "
|
|
172
169
|
SELECT TABLE_NAME
|
|
173
|
-
FROM information_schema.tables
|
|
174
|
-
WHERE table_schema = '${database}'
|
|
170
|
+
FROM information_schema.tables
|
|
171
|
+
WHERE table_schema = '${database}'
|
|
175
172
|
AND engine = 'FEDERATED';" -s -N`;
|
|
176
173
|
const federatedTables = (await run(fetchFederatedTablesCommand, { MYSQL_PWD: password })).trim();
|
|
177
174
|
if (!federatedTables) return "";
|
|
@@ -202,7 +199,7 @@ class MySQLAdapter extends BaseDBAdapter {
|
|
|
202
199
|
const [Server_name, Host, Db, Username, Password, Port] = entry.split(" ");
|
|
203
200
|
createServerSQL += `
|
|
204
201
|
IF NOT EXISTS (SELECT * FROM mysql.servers WHERE Server_name = '${Server_name}') THEN
|
|
205
|
-
CREATE SERVER ${Server_name} FOREIGN DATA WRAPPER mysql
|
|
202
|
+
CREATE SERVER ${Server_name} FOREIGN DATA WRAPPER mysql
|
|
206
203
|
OPTIONS (HOST '${Host}', DATABASE '${Db}', USER '${Username}', PASSWORD '${Password}', PORT ${Port});
|
|
207
204
|
END IF;
|
|
208
205
|
`;
|
|
@@ -233,7 +230,7 @@ class MySQLAdapter extends BaseDBAdapter {
|
|
|
233
230
|
SELECT table_name
|
|
234
231
|
FROM information_schema.TABLES
|
|
235
232
|
WHERE table_schema = SCHEMA();
|
|
236
|
-
|
|
233
|
+
|
|
237
234
|
-- Cursor for triggers
|
|
238
235
|
DECLARE _trigger_cursor CURSOR FOR
|
|
239
236
|
SELECT trigger_name
|
|
@@ -326,6 +323,7 @@ class PostgresAdapter extends BaseDBAdapter {
|
|
|
326
323
|
try {
|
|
327
324
|
return (0, import_child_process.execSync)(`${cmd} --version`).toString();
|
|
328
325
|
} catch (_error) {
|
|
326
|
+
return void 0;
|
|
329
327
|
}
|
|
330
328
|
}
|
|
331
329
|
async backup(dir) {
|
|
@@ -346,8 +344,8 @@ class PostgresAdapter extends BaseDBAdapter {
|
|
|
346
344
|
const schemaNameCondition = schemaOption ? `WHERE schemaname = '${schemaOption}'` : `WHERE schemaname NOT IN ('pg_catalog', 'information_schema')`;
|
|
347
345
|
const relnamespaceCondition = schemaOption ? `WHERE relnamespace = '${schemaOption}'::regnamespace` : `WHERE tgrelid IN (SELECT oid FROM pg_class WHERE relnamespace NOT IN (SELECT oid FROM pg_catalog.pg_namespace WHERE nspname IN ('pg_catalog', 'information_schema')))`;
|
|
348
346
|
const dropDataCommand = `psql -U ${username} -h ${host} ${port ? `-p ${port}` : ""} -d ${database} -c "
|
|
349
|
-
DO ${D$$} DECLARE r RECORD;
|
|
350
|
-
BEGIN
|
|
347
|
+
DO ${D$$} DECLARE r RECORD;
|
|
348
|
+
BEGIN
|
|
351
349
|
FOR r IN (SELECT viewname,schemaname FROM pg_views ${schemaNameCondition}) LOOP
|
|
352
350
|
BEGIN
|
|
353
351
|
EXECUTE 'DROP VIEW IF EXISTS ' || quote_ident(r.schemaname) || '.' || quote_ident(r.tablename) || ' CASCADE';
|
|
@@ -356,13 +354,13 @@ class PostgresAdapter extends BaseDBAdapter {
|
|
|
356
354
|
END;
|
|
357
355
|
END LOOP;
|
|
358
356
|
|
|
359
|
-
FOR r IN (SELECT tablename,schemaname FROM pg_tables ${schemaNameCondition}) LOOP
|
|
357
|
+
FOR r IN (SELECT tablename,schemaname FROM pg_tables ${schemaNameCondition}) LOOP
|
|
360
358
|
BEGIN
|
|
361
|
-
EXECUTE 'DROP TABLE IF EXISTS ' || quote_ident(r.schemaname) || '.' || quote_ident(r.tablename) || ' CASCADE';
|
|
359
|
+
EXECUTE 'DROP TABLE IF EXISTS ' || quote_ident(r.schemaname) || '.' || quote_ident(r.tablename) || ' CASCADE';
|
|
362
360
|
EXCEPTION
|
|
363
361
|
WHEN OTHERS THEN
|
|
364
362
|
END;
|
|
365
|
-
END LOOP;
|
|
363
|
+
END LOOP;
|
|
366
364
|
|
|
367
365
|
FOR r IN (SELECT sequencename,schemaname FROM pg_sequences ${schemaNameCondition}) LOOP
|
|
368
366
|
BEGIN
|
|
@@ -376,7 +374,7 @@ class PostgresAdapter extends BaseDBAdapter {
|
|
|
376
374
|
SELECT tgname, tgrelid::regclass::text AS table_fullname
|
|
377
375
|
FROM pg_trigger
|
|
378
376
|
WHERE tgrelid IN (SELECT oid FROM pg_class ${relnamespaceCondition})
|
|
379
|
-
) LOOP
|
|
377
|
+
) LOOP
|
|
380
378
|
BEGIN
|
|
381
379
|
EXECUTE 'DROP TRIGGER IF EXISTS ' || quote_ident(r.tgname) || ' ON ' || quote_ident(r.table_fullname) || ' CASCADE';
|
|
382
380
|
EXCEPTION
|
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"displayName.zh-CN": "备份管理器",
|
|
5
5
|
"description": "Provides backup and restore functionality, supports scheduled backups, and ensures data security and quick recovery.",
|
|
6
6
|
"description.zh-CN": "提供备份与还原功能,支持定时备份,确保数据安全与快速恢复。",
|
|
7
|
-
"version": "2.0.
|
|
7
|
+
"version": "2.1.0-beta.36",
|
|
8
8
|
"license": "Apache-2.0",
|
|
9
9
|
"main": "dist/server/index.js",
|
|
10
10
|
"nocobase": {
|
|
@@ -47,5 +47,5 @@
|
|
|
47
47
|
"keywords": [
|
|
48
48
|
"System management"
|
|
49
49
|
],
|
|
50
|
-
"gitHead": "
|
|
50
|
+
"gitHead": "397d45c744f6eb48b3a0cd785c87cbf1257c3513"
|
|
51
51
|
}
|