The problem of importing MOT table using gs_restore in openGauss database

52 Views Asked by At

In the openGauss database, when gs_restore is used to import the MOT table, the table size is 1.3 GB. An exception occurs. The log shows that the requested 1.3 GB exceeds the configured 1 GB. What should I do?

1

There are 1 best solutions below

0
On

The error logs in the server side should have more details about what memory limit (global or local) is reached, please check. Also instead of loading everything in a single transaction, try using --jobs option.

https://opengauss.org/en/docs/3.0.0/docs/Toolreference/gs_restore.html

-j, –jobs=NUM

Specifies the number of concurrent, the most time-consuming jobs of gs_restore (such as loading data, creating indexes, or creating constraints). This parameter can greatly reduce the time to import a large database to a server running on a multiprocessor machine.

Each job is one process or one thread, depending on the OS; and uses a separate connection to the server.

The optimal value for this option depends on the server hardware setting, the client, the network, the number of CPU cores, and disk settings. It is recommended that the parameter be set to the number of CPU cores on the server. In addition, a larger value can also lead to faster import in many cases. However, an overly large value will lead to decreased performance because of thrashing.

This parameter supports custom-format archives only. The input file must be a regular file (not the pipe file). This parameter can be ignored when you select the script method rather than connect to a database server. In addition, multiple jobs cannot be used in conjunction with the –single-transaction parameter.