Documentation Home
MySQL Shell 8.0
Download this Manual
PDF (US Ltr) - 1.4Mb
PDF (A4) - 1.4Mb


MySQL Shell 8.0  /  MySQL Shell ナヌティリティ  /  パラレルテヌブルむンポヌトナヌティリティ

このペヌゞは機械翻蚳したものです。

8.4 ãƒ‘ラレルテヌブルむンポヌトナヌティリティ

MySQL Shell 8.0.17 で導入された MySQL Shell パラレルテヌブルむンポヌトナヌティリティ util.importTable() は、倧芏暡なデヌタファむルの MySQL リレヌショナルテヌブルぞの高速デヌタむンポヌトを提䟛したす。 このナヌティリティは、入力デヌタファむルを分析しおチャンクに配垃し、パラレル接続を䜿甚しおチャンクをタヌゲット MySQL サヌバヌにアップロヌドしたす。 このナヌティリティは、LOAD DATA ステヌトメントを䜿甚した暙準のシングルスレッドアップロヌドよりも数回高速に倧芏暡デヌタむンポヌトを完了できたす。

パラレルテヌブルむンポヌトナヌティリティを実行する堎合、デヌタファむルのフィヌルドず MySQL テヌブルのカラムの間のマッピングを指定したす。 LOAD DATA ステヌトメントの堎合ず同様に、フィヌルド凊理および行凊理のオプションを蚭定しお、任意の圢匏でデヌタファむルを凊理できたす。 耇数のファむルの堎合、すべおのファむルは同じ圢匏である必芁がありたす。 ナヌティリティのデフォルト蚀語は、そのステヌトメントのデフォルト蚭定を䜿甚しお SELECT...INTO OUTFILE ステヌトメントを䜿甚しお䜜成されたファむルにマップされたす。 ナヌティリティには、CSV ファむル (DOS たたは UNIX システムで䜜成された)、TSV ファむルおよび JSON の暙準デヌタ圢匏にマップする事前蚭定枈のダむアレクトもあり、必芁に応じおフィヌルド凊理および行凊理オプションを䜿甚しおこれらをカスタマむズできたす。 JSON デヌタは、document-per-line 圢匏である必芁がありたす。

パラレルテヌブルむンポヌトナヌティリティが導入された埌にいく぀かの関数が远加されおいるため、最新バヌゞョンの MySQL Shell を䜿甚しおナヌティリティを完党に機胜させおください。

入力前凊理

MySQL Shell 8.0.22 から、パラレルテヌブルむンポヌトナヌティリティは、LOAD DATA ステヌトメントず同じ方法で、入力前凊理のためにデヌタファむルからカラムを取埗できたす。 遞択したデヌタを砎棄するか、デヌタを倉換しおタヌゲットテヌブルのカラムに割り圓おるこずができたす。

Oracle Cloud Infrastructure Object Storage むンポヌト

MySQL Shell 8.0.20 たでは、クラむアントホストからロヌカルディスクずしおアクセス可胜な堎所からデヌタをむンポヌトする必芁がありたす。 MySQL Shell 8.0.21 から、osBucketName オプションで指定された Oracle Cloud Infrastructure Object Storage バケットからデヌタをむンポヌトするこずもできたす。

耇数のデヌタファむルのむンポヌト

MySQL Shell 8.0.22 たで、パラレルテヌブルむンポヌトナヌティリティでは、単䞀の入力デヌタファむルを単䞀のリレヌショナルテヌブルにむンポヌトできたす。 MySQL Shell 8.0.23 からは、このナヌティリティは指定されたファむルのリストをむンポヌトするこずもでき、ワむルドカヌドパタヌンマッチングをサポヌトしおすべおの関連ファむルを堎所から含めたす。 ナヌティリティの単䞀の実行によっおアップロヌドされた耇数のファむルは、単䞀のリレヌショナルテヌブルに配眮されるため、たずえば、耇数のホストから゚クスポヌトされたデヌタを、分析に䜿甚する単䞀のテヌブルにマヌゞできたす。

圧瞮ファむル凊理

MySQL Shell 8.0.21 たでは、パラレルテヌブルむンポヌトナヌティリティは、圧瞮されおいない入力デヌタファむルのみを受け入れたす。 ナヌティリティは、デヌタファむルを分析しおチャンクに配垃し、チャンクをタヌゲット MySQL サヌバヌのリレヌショナルテヌブルにアップロヌドしお、チャンクをパラレル接続間で分割したす。 MySQL Shell 8.0.22 から、ナヌティリティは、gzip (.gz) および zstd (.zst) 圢匏で圧瞮されたデヌタファむルを受け入れお、ファむル拡匵子に基づいおフォヌマットを自動的に怜出するこずもできたす。 ナヌティリティは、圧瞮圢匏でストレヌゞから圧瞮ファむルをアップロヌドし、転送のその郚分の垯域幅を節玄したす。 圧瞮ファむルはチャンクに分散できないため、かわりにナヌティリティはパラレル接続を䜿甚しお耇数のファむルを解凍し、タヌゲットサヌバヌに同時にアップロヌドしたす。 入力デヌタファむルが 1 ぀しかない堎合、圧瞮ファむルのアップロヌドで䜿甚できるのは 1 ぀の接続のみです。

MySQL Shell のパラレルテヌブルむンポヌトナヌティリティでは、MySQL Shell テヌブル゚クスポヌトナヌティリティからの出力がサポヌトされおいたす。このナヌティリティでは、生成されたデヌタファむルを出力ずしお圧瞮し、ロヌカルフォルダたたはオブゞェクトストレヌゞバケットに゚クスポヌトできたす。 パラレルテヌブルむンポヌトナヌティリティのデフォルトの蚀語は、テヌブル゚クスポヌトナヌティリティによっお生成される出力ファむルのデフォルトです。 パラレルテヌブルむンポヌトナヌティリティを䜿甚しお、他の゜ヌスからファむルをアップロヌドするこずもできたす。

MySQL Shell ダンプロヌドナヌティリティ util.loadDump() は、MySQL Shell むンスタンスダンプナヌティリティ util.dumpInstance()、スキヌマダンプナヌティリティ util.dumpSchemas() およびテヌブルダンプナヌティリティ util.dumpTables() によっお生成されたチャンク出力ファむルずメタデヌタの組合せをむンポヌトするように蚭蚈されおいたす。 タヌゲットサヌバヌにアップロヌドする前にチャンク出力ファむルのデヌタを倉曎する堎合は、パラレルテヌブルむンポヌトナヌティリティをダンプロヌドナヌティリティず組み合せお䜿甚できたす。 これを行うには、たずダンプロヌドナヌティリティを䜿甚しお、遞択したテヌブルの DDL のみをロヌドし、タヌゲットサヌバヌにテヌブルを䜜成したす。 次に、パラレルテヌブルむンポヌトナヌティリティを䜿甚しお、テヌブルの出力ファむルからデヌタを取埗および倉換し、タヌゲットテヌブルにむンポヌトしたす。 必芁に応じお、デヌタを倉曎する他のテヌブルに察しおこのプロセスを繰り返したす。 最埌に、ダンプロヌドナヌティリティを䜿甚しお、倉曎しない残りのテヌブル (倉曎したテヌブルを陀く) の DDL およびデヌタをロヌドしたす。 手順の詳现は、ダンプしたデヌタの倉曎 を参照しおください。

パラレルテヌブルむンポヌトナヌティリティには、タヌゲット MySQL サヌバヌぞの既存の クラシック MySQL プロトコル 接続が必芁です。 各スレッドは、独自のセッションを開いおデヌタのチャンクを MySQL サヌバヌに送信するか、圧瞮ファむルの堎合は耇数のファむルを䞊行しお送信したす。 スレッド数、各チャンクで送信されるバむト数およびスレッド圓たりのデヌタ転送の最倧速床を調敎しお、ネットワヌク䞊の負荷ずデヌタ転送の速床を均衡化できたす。 ナヌティリティは、LOAD DATA ステヌトメントをサポヌトしおいない X プロトコル 接続を介しお動䜜するこずはできたせん。

むンポヌトするデヌタファむルは、次のいずれかの堎所にある必芁がありたす:

  • クラむアントホストからロヌカルディスクずしおアクセス可胜な堎所。

  • URL で指定された、HTTP たたは HTTPS を介しおクラむアントホストにアクセス可胜なリモヌトの堎所。 パタヌン䞀臎は、この方法でアクセスされるファむルではサポヌトされおいたせん。

  • Oracle Cloud Infrastructure Object Storage バケット ( MySQL Shell 8.0.21 から)。

デヌタは、アクティブな MySQL セッションが接続されおいる MySQL サヌバヌの単䞀のリレヌショナルテヌブルにむンポヌトされたす。

パラレルテヌブルむンポヌトナヌティリティでは、LOAD DATA LOCAL INFILE ステヌトメントを䜿甚しおデヌタをアップロヌドするため、タヌゲットサヌバヌで local_infile システム倉数を ON に蚭定する必芁がありたす。 これを行うには、パラレルテヌブルむンポヌトナヌティリティを実行する前に、SQL モヌドで次のステヌトメントを発行したす:

SET GLOBAL local_infile = 1;

LOAD DATA LOCAL でセキュリティ䞊の既知の朜圚的な問題を回避するために、MySQL サヌバヌがファむル転送リク゚ストを含むパラレルテヌブルむンポヌトナヌティリティの LOAD DATA リク゚ストに応答するず、ナヌティリティは事前に決定されたデヌタチャンクのみを送信し、サヌバヌによっお詊行された特定のリク゚ストは無芖したす。 詳现は、LOAD DATA LOCAL のセキュリティヌ䞊の考慮事項を参照しおください。

関数

MySQL Shell API では、パラレルテヌブルむンポヌトナヌティリティは util グロヌバルオブゞェクトの関数であり、次のシグネチャを持ちたす:

importTable ({file_name | file_list}, options)

file_name は、むンポヌトするデヌタを含む単䞀ファむルの名前ずパスを指定する文字列です。 たたは、file_list は、耇数のデヌタファむルを指定するファむルパスの配列です。 Windows では、ファむルパスでバックスラッシュを゚スケヌプする必芁がありたす。たたは、代わりにスラッシュを䜿甚できたす。

  • ロヌカルディスク䞊のクラむアントホストからアクセス可胜なファむルの堎合、ディレクトリパスに接頭蟞ずしお file://スキヌマを付けるか、デフォルトのスキヌマを䜿甚できたす。 この方法でアクセスされるファむルの堎合、ファむルパスには、パタヌン䞀臎のためのワむルドカヌド * (耇数文字) および ? (単䞀文字) を含めるこずができたす。

  • HTTP たたは HTTPS を介しおクラむアントホストにアクセスできるファむルの堎合は、必芁に応じお、URL たたは URL のリストを接頭蟞ずしお http://たたは https://スキヌマを付けお http[s]://host.domain[:port]/path の圢匏で指定したす。 この方法でアクセスされるファむルの堎合、パタヌン䞀臎は䜿甚できたせん。 HTTP サヌバヌは Range リク゚ストヘッダヌをサポヌトし、Content-Range レスポンスヘッダヌをクラむアントに返す必芁がありたす。

  • Oracle Cloud Infrastructure Object Storage バケット内のファむルの堎合は、バケット内のファむルぞのパスを指定し、osBucketName オプションを䜿甚しおバケット名を指定したす。

options はむンポヌトオプションのディクショナリで、空の堎合は省略できたす。 オプションは、䟋の埌にリストされおいたす。

この関数は、void、たたぱラヌの堎合は䟋倖を返したす。 むンポヌトが Ctrl+C を持぀ナヌザヌによっお途䞭で停止された堎合、たたぱラヌが発生した堎合、ナヌティリティはデヌタの送信を停止したす。 サヌバヌが受信したデヌタの凊理を終了するず、その時点で各スレッドによっおむンポヌトされおいたチャンク、完了率およびタヌゲットテヌブルで曎新されたレコヌド数を瀺すメッセヌゞが返されたす。

䟋

次の䟋では、MySQL ShellJavaScript モヌドの最初の䟋ず MySQL ShellPython モヌドの次の䟋で、単䞀の CSV ファむル/tmp/productrange.csv のデヌタを mydb デヌタベヌスの products テヌブルにむンポヌトし、ファむルのヘッダヌ行をスキップしたす:

mysql-js> util.importTable("/tmp/productrange.csv", {schema: "mydb", table: "products", dialect: "csv-unix", skipRows: 1, showProgress: true})
mysql-py> util.import_table("/tmp/productrange.csv", {"schema": "mydb", "table": "products", "dialect": "csv-unix", "skipRows": 1, "showProgress": True})

次の MySQL Shell Python モヌドの䟋では、CSV ファむルの蚀語のみを指定したす。mydb は、MySQL Shell セッションのアクティブなスキヌマです。 したがっお、ナヌティリティは、ファむル/tmp/productrange.csv 内のデヌタを mydb デヌタベヌス内の productrange テヌブルにむンポヌトしたす:

mysql-py> \use mydb
mysql-py> util.import_table("/tmp/productrange.csv", {"dialect": "csv-unix"})

MySQL ShellPython モヌドの次の䟋では、個別に名前が付けられたファむル、ワむルドカヌドパタヌンマッチングを䜿甚しお指定されたファむルの範囲、圧瞮されたファむルなどの耇数のファむルからデヌタをむンポヌトしたす:

mysql-py> util.import_table(
    [
        "data_a.csv",
        "data_b*",
        "data_c*",
        "data_d.tsv.zst",
        "data_e.tsv.zst",
        "data_f.tsv.gz",
        "/backup/replica3/2021_01_12/data_g.tsv",
        "/backup/replica3/2021_01_13/*.tsv",
    ],
    {"schema": "mydb", "table": "productrange"}
)

パラレルテヌブルむンポヌトナヌティリティは、mysqlsh コマンドむンタフェヌスを䜿甚しおコマンドラむンから起動するこずもできたす。 このむンタフェヌスを䜿甚しお、次の䟋のようにナヌティリティを起動したす:

mysqlsh mysql://root:@127.0.0.1:3366 --ssl-mode=DISABLED -- util import-table /r/mytable.dump --schema=mydb --table=regions --bytes-per-chunk=10M --linesTerminatedBy=$'\r\n'

耇数のデヌタファむルをむンポヌトする堎合、次の䟋に瀺すように、ワむルドカヌドパタヌンマッチングを䜿甚しお指定されたファむルの範囲は、匕甚笊で囲たれおいれば MySQL Shellglob パタヌンマッチングロゞックによっお展開されたす。 それ以倖の堎合は、mysqlsh コマンドを入力したナヌザヌシェルのパタヌン䞀臎ロゞックによっお展開されたす。

mysqlsh mysql://root:@127.0.0.1:3366 -- util import-table data_a.csv "data_b*" data_d.tsv.zst --schema=mydb --table=productrange --osBucketName=mybucket

mysqlsh コマンドむンタフェヌスを䜿甚しおパラレルテヌブルむンポヌトナヌティリティを起動する堎合、配列倀は受け入れられないため、columns オプションはサポヌトされたせん。したがっお、デヌタファむルの入力行には、タヌゲットテヌブルのすべおのカラムに䞀臎するフィヌルドが含たれおいる必芁がありたす。 前述の䟋に瀺すように、ラむンフィヌド文字は、この関数をサポヌトするシェル (bash, ksh, mksh や zsh など) で ANSI-C 匕甚笊を䜿甚しお枡す必芁がありたす。 このむンタフェヌスの詳现は、セクション5.8「API コマンドラむンむンタフェヌス」 を参照しおください。

オプション

パラレルテヌブルむンポヌトナヌティリティでは、次のむンポヌトオプションを䜿甚しおデヌタのむンポヌト堎所ずむンポヌト方法を指定できたす:

schema: "db_name"

接続された MySQL サヌバヌ䞊のタヌゲットデヌタベヌスの名前。 このオプションを省略するず、ナヌティリティは、接続 URI 文字列、\use コマンドたたは MySQL Shell オプションで指定された、珟圚の MySQL Shell セッションで䜿甚されおいるスキヌマ名を識別しお䜿甚しようずしたす。 スキヌマ名が指定されおおらず、セッションから識別できない堎合は、゚ラヌが返されたす。

table: "table_name"

タヌゲットリレヌショナルテヌブルの名前。 このオプションを省略するず、テヌブル名は拡匵子のないデヌタファむルの名前ずみなされたす。 タヌゲットテヌブルがタヌゲットデヌタベヌスに存圚する必芁がありたす。

columns: array of column names

タヌゲットリレヌショナルテヌブルのカラムにマップされた順序で指定された、むンポヌトファむルのカラム名を含む文字列の配列。 このオプションは、むンポヌトされたデヌタにタヌゲットテヌブルのすべおのカラムが含たれおいない堎合、たたはむンポヌトされたデヌタのフィヌルドの順序がテヌブルのカラムの順序ず異なる堎合に䜿甚したす。 このオプションを省略した堎合、入力行にはタヌゲットテヌブルの各カラムに䞀臎するフィヌルドが含たれるず想定されたす。

MySQL Shell 8.0.22 からは、このオプションを䜿甚しお、LOAD DATA ステヌトメントの堎合ず同じ方法で、入力前凊理のためにむンポヌトファむルからカラムを取埗できたす。 配列内のカラム名のかわりに敎数倀を䜿甚するず、むンポヌトファむル内のそのカラムは、@1 などのナヌザヌ倉数@int ずしお取埗されたす。 遞択したデヌタを砎棄するか、decodeColumns オプションを䜿甚しおデヌタを倉換し、タヌゲットテヌブルのカラムに割り圓おるこずができたす。

MySQL ShellJavaScript モヌドのこの䟋では、むンポヌトファむルの 2 番目ず 4 番目のカラムがナヌザヌ倉数@1 および@2 に割り圓おられ、タヌゲットテヌブルのどのカラムにも割り圓おる decodeColumns オプションはないため、これらは砎棄されたす。

mysql-js> util.importTable('file.txt', {
            table: 't1',
            columns: ['column1', 1, 'column2', 2, 'column3']
          });
decodeColumns: dictionary

columns オプションによっおナヌザヌ倉数ずしお取埗されたむンポヌトファむルカラムをタヌゲットテヌブルのカラムに割り圓お、LOAD DATA ステヌトメントの SET 句ず同じ方法で前凊理倉換を指定する、キヌず倀のペアのディクショナリ。 このオプションは、MySQL Shell 8.0.22 から䜿甚できたす。

MySQL ShellJavaScript モヌドのこの䟋では、デヌタファむルの最初の入力カラムがタヌゲットテヌブルの最初のカラムずしお䜿甚されたす。 columns オプションによっお倉数@1 に割り圓おられた 2 番目の入力カラムは、タヌゲットテヌブルの 2 番目のカラムの倀ずしお䜿甚される前に陀算操䜜の察象ずなりたす。

mysql-js> util.importTable('file.txt', {
            columns: ['column1', 1],
            decodeColumns: {'column2': '@1 / 100'}
          });

MySQL ShellJavaScript モヌドのこの䟋では、デヌタファむルの入力カラムが䞡方ずも倉数に割り圓おられ、様々な方法で倉換されお、タヌゲットテヌブルのカラムぞの移入に䜿甚されたす:

mysql-js> util.importTable('file.txt', {
            table: 't1',
            columns: [1, 2],
            decodeColumns: {
              'a': '@1',
              'b': '@2',
              'sum': '@1 + @2',
              'multiple': '@1 * @2',
              'power': 'POW(@1, @2)'
            }
          });
skipRows: number

むンポヌトファむルの先頭、たたは耇数のむンポヌトファむルの堎合はファむルリストに含たれるすべおのファむルの先頭で、この数のデヌタ行をスキップしたす。 このオプションを䜿甚しお、アップロヌドからテヌブルぞのカラム名を含む初期ヘッダヌ行を省略できたす。 デフォルトでは、行はスキップされたせん。

replaceDuplicates: [true|false]

既存の行ず同じ倀たたは䞀意むンデックスを持぀入力行を眮換する (true) かスキップする (false) か。 デフォルトは false です。

dialect: [default|csv|csv-unix|tsv|json]

指定したファむル圢匏に適した䞀連のフィヌルド凊理および行凊理オプションを䜿甚したす。 linesTerminatedBy, fieldsTerminatedBy, fieldsEnclosedBy, fieldsOptionallyEnclosed および fieldsEscapedBy オプションのいずれかたたは耇数を指定しお蚭定を倉曎するこずで、遞択した蚀語をさらにカスタマむズするためのベヌスずしお䜿甚できたす。 デフォルトの蚀語は、そのステヌトメントのデフォルト蚭定で SELECT...INTO OUTFILE ステヌトメントを䜿甚しお䜜成されたファむルにマップされたす。 これは、MySQL Shell テヌブル゚クスポヌトナヌティリティによっお生成される出力ファむルのデフォルトです。 CSV ファむル (DOS たたは UNIX システムで䜜成)、TSV ファむルおよび JSON デヌタに適したその他のダむアレクトを䜿甚できたす。 各蚀語に適甚される蚭定は次のずおりです:

衚 8.2 ãƒ‘ラレルテヌブルむンポヌトナヌティリティの蚀語蚭定

dialect

linesTerminatedBy

fieldsTerminatedBy

fieldsEnclosedBy

fieldsOptionallyEnclosed

fieldsEscapedBy

default

[LF]

[TAB]

[空]

false

\

csv

[CR][LF]

,

''

true

\

csv-unix

[LF]

,

''

false

\

tsv

[CR][LF]

[TAB]

''

true

\

json

[LF]

[LF]

[空]

false

[空]


泚蚘
  1. ダむアレクトのキャリッゞリタヌンおよびラむンフィヌドの倀は、オペレヌティングシステムに䟝存したせん。

  2. linesTerminatedBy, fieldsTerminatedBy, fieldsEnclosedBy, fieldsOptionallyEnclosed および fieldsEscapedBy オプションを䜿甚する堎合、コマンドむンタプリタの゚スケヌプ芏則に応じお、バックスラッシュ文字 (\) をオプション倀で䜿甚する堎合は二重にする必芁がありたす。

  3. LOAD DATA ステヌトメントを䜿甚した MySQL サヌバヌず同様に、MySQL Shell では、指定したフィヌルド凊理および行凊理オプションは怜蚌されたせん。 これらのオプションを正しく遞択しないず、デヌタが誀ったフィヌルドに郚分的にむンポヌトされたり、正しくむンポヌトされない堎合がありたす。 むンポヌトを開始する前に必ず蚭定を確認し、埌で結果を確認しおください。

linesTerminatedBy: "characters"

入力デヌタファむルの各行を終了する 1 ぀以䞊の文字 (たたは空の文字列)。 デフォルトは、指定された方蚀、たたは方蚀オプションが省略されおいる堎合は改行文字 (\n) です。 このオプションは、LOAD DATA ステヌトメントの LINES TERMINATED BY オプションず同等です。 ナヌティリティでは、空の文字列に蚭定されおいる LOAD DATA ステヌトメントの LINES STARTING BY オプションに盞圓するものは提䟛されないこずに泚意しおください。

fieldsTerminatedBy: "characters"

入力デヌタファむルの各フィヌルドを終了する 1 ぀以䞊の文字 (たたは空の文字列)。 デフォルトは、指定された蚀語、たたは蚀語オプションが省略されおいる堎合はタブ文字 (\t) です。 このオプションは、LOAD DATA ステヌトメントの FIELDS TERMINATED BY オプションず同等です。

fieldsEnclosedBy: "character"

入力デヌタファむルの各フィヌルドを囲む単䞀の文字 (たたは空の文字列)。 デフォルトは、指定された蚀語に察するものであり、dialect オプションが省略されおいる堎合は空の文字列です。 このオプションは、LOAD DATA ステヌトメントの FIELDS ENCLOSED BY オプションず同等です。

fieldsOptionallyEnclosed: [ true | false ]

fieldsEnclosedBy に指定された文字が入力デヌタファむル (false) 内のすべおのフィヌルドを囲むか、堎合によっおのみフィヌルドを囲むか (true)。 デフォルトは、指定された蚀語、たたは dialect オプションが省略されおいる堎合は false です。 このオプションにより、fieldsEnclosedBy オプションは LOAD DATA ステヌトメントの FIELDS OPTIONALLY ENCLOSED BY オプションず同等になりたす。

fieldsEscapedBy: "character"

入力デヌタファむル内の゚スケヌプシヌケンスを開始する文字。 これを指定しない堎合、゚スケヌプシヌケンスの解釈は行われたせん。 デフォルトは、指定された蚀語の堎合ず同様です。たたは、dialect オプションが省略されおいる堎合はバックスラッシュ (\)) です。 このオプションは、LOAD DATA ステヌトメントの FIELDS ESCAPED BY オプションず同等です。

osBucketName: "string"

MySQL Shell 8.0.21 に远加されたした。 入力デヌタファむルが存圚する Oracle Cloud Infrastructure Object Storage バケットの名前。 デフォルトでは、~/.oci/config にある Oracle Cloud Infrastructure CLI 構成ファむルの[DEFAULT]プロファむルを䜿甚しお、バケットぞの接続が確立されたす。 ociConfigFile および ociProfile オプションを䜿甚しお、接続に䜿甚される代替プロファむルを眮換できたす。 CLI 構成ファむルの蚭定手順に぀いおは、「SDK および CLI 構成ファむル」を参照しおください。

osNamespace: "string"

MySQL Shell 8.0.21 に远加されたした。 osBucketName によっお指定されたオブゞェクトストレヌゞバケットが配眮される Oracle Cloud Infrastructure ネヌムスペヌス。 オブゞェクトストレヌゞバケットのネヌムスペヌスは、Oracle Cloud Infrastructure コン゜ヌルのバケット詳现ペヌゞの「バケット情報」タブに衚瀺されるか、Oracle Cloud Infrastructure コマンドラむンむンタフェヌスを䜿甚しお取埗できたす。

ociConfigFile: "string"

MySQL Shell 8.0.21 に远加されたした。 デフォルトの堎所の ~/.oci/config ではなく、接続に䜿甚するプロファむルを含む Oracle Cloud Infrastructure CLI 構成ファむル。

ociProfile: "string"

MySQL Shell 8.0.21 に远加されたした。 接続に䜿甚される Oracle Cloud Infrastructure CLI 構成ファむル内の[DEFAULT]プロファむルではなく、接続に䜿甚する Oracle Cloud Infrastructure プロファむルのプロファむル名。

characterSet: "charset"

MySQL Shell 8.0.21 に远加されたした。 このオプションでは、むンポヌト時に入力デヌタが解釈される文字セット゚ンコヌディングを指定したす。 このオプションを binary に蚭定するず、むンポヌト䞭に倉換は行われたせん。 このオプションを省略するず、むンポヌトでは、character_set_database システム倉数で指定された文字セットを䜿甚しお入力デヌタが解釈されたす。

bytesPerChunk: "size"

耇数の入力デヌタファむルのリストの堎合、このオプションは䜿甚できたせん。 単䞀の入力デヌタファむルの堎合、このオプションでは、スレッドがタヌゲットサヌバヌぞの LOAD DATA コヌルごずに送信するバむト数 (および行の終わりに到達するために必芁な远加バむト数) を指定したす。 このナヌティリティは、スレッドがタヌゲットサヌバヌに取埗しお送信するために、デヌタをこのサむズのチャンクに分散したす。 チャンクサむズは、バむト数で指定するか、接尟蟞 k (キロバむト)、M (メガバむト)、G (ギガバむト) を䜿甚しお指定できたす。 たずえば、bytesPerChunk="2k"では、スレッドは玄 2 キロバむトのチャンクを送信したす。 最小チャンクサむズは 131072 バむトで、デフォルトのチャンクサむズは 50M です。

threads: number

入力ファむルのデヌタをタヌゲットサヌバヌに送信するために䜿甚するパラレルスレッドの最倧数。 スレッド数を指定しない堎合、デフォルトの最倧倀は 8 です。 耇数の入力デヌタファむルのリストに぀いおは、指定した数たたは最倧数のスレッドが䜜成されたす。 単䞀の入力デヌタファむルの堎合、ナヌティリティは次の匏を䜿甚しお、この最倧数たでの適切なスレッド数を蚈算したす:

min{max{1, threads}, chunks}}

ここで、threads はスレッドの最倧数、chunks はデヌタが分割されるチャンクの数で、ファむルサむズを bytesPerChunk サむズで陀算しおから 1 を加算しお蚈算されたす。 この蚈算により、スレッドの最倧数が実際に送信されるチャンクの数を超えた堎合、ナヌティリティは必芁以䞊のスレッドを䜜成したせん。

圧瞮されたファむルはチャンクに配垃できないため、ナヌティリティはそのかわりにパラレル接続を䜿甚しお耇数のファむルを䞀床にアップロヌドしたす。 入力デヌタファむルが 1 ぀しかない堎合、圧瞮ファむルのアップロヌドで䜿甚できるのは 1 ぀の接続のみです。

maxRate: "rate"

デヌタスルヌプットの最倧制限 (バむト/秒/スレッド)。 クラむアントホストたたはタヌゲットサヌバヌのネットワヌク、I/O たたは CPU の飜和を回避する必芁がある堎合は、このオプションを䜿甚したす。 最倧速床はバむト数で指定するこずも、接尟蟞 k (キロバむト)、M (メガバむト)、G (ギガバむト) を䜿甚しお指定するこずもできたす。 たずえば、maxRate="5M"では、各スレッドが 5MB のデヌタ/秒に制限され、8 ぀のスレッドで 40MB/秒の転送速床が埗られたす。 デフォルトは 0 で、これは制限がないこずを意味したす。

showProgress: [ true | false ]

むンポヌトの進行状況情報を衚瀺 (true) たたは非衚瀺 (false) したす。 デフォルトは、stdout が端末 (tty) の堎合は true、それ以倖の堎合は false です。