mysqldumpで「Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces」となる場合の対処

February 17,2021 11:55 PM
Category:[MySQL]
Tag:[MySQL]
Permalink

mysqldumpで「Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces」となる場合の対処方法を紹介します。

1.問題点

MySQL(5.5)のバックアップは、

mysqldump -h <DBホスト> -u <DBユーザー> -p<DBパスワード> <データベース名> > backup.sql

で実行していました。

今回、MySQLを5.5から5.7にアップグレードしてバックアップしたところ、

% mysqldump -h <DBホスト> -u <DBユーザー> -p<DBパスワード> <データベース名> > backup.sql
mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces

というエラーが表示されるようになりましたが、解決方法が分かりません。

ということで、mysqldumpで「Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces」となる場合の対処方法を紹介します。

2.原因

MySQLを5.7にバージョンアップしたことで、PROCESS特権が必要になるようです。

以下、公式サイトの解説です。

INFORMATION_SCHEMA.FILESテーブルへのアクセスにPROCESS特権が必要になりました。この変更は、FILESテーブルのテーブルスペース情報にアクセスするmysqldumpコマンドのユーザーに影響するため、PROCESS特権も必要になります。

3.対処方法

テーブルスペース情報をダンプする必要がないユーザーは、-no-tablespacesオプションを指定してmysqldumpを呼び出すことにより、前述の要件を回避できます。

mysqldumpのパラメータに"--no-tablespaces"を付与します。

% mysqldump --no-tablespaces -h <DBホスト> -u <DBユーザー> -p<DBパスワード> <データベース名> > backup.sql

4.参考サイト

参考サイトは下記です。ありがとうございました。

Comments [0] | Trackbacks [0]

bashの変数から最後の1文字を取得・削除する方法

February 5,2021 11:55 PM
Category:[bash]
Tag:[bash]
Permalink

bashの変数から最後の1文字を取得・削除する方法を紹介します。

https://srad.jp/~cobonzu/journal/547921/

1.問題点

下記のスクリプト(test.sh)にある変数fooの最後の文字"g"を取得または削除したいのですが、方法が分かりません。

#!/bin/bash
 
foo=abcdefg

ということで、bashの変数から最後の1文字を取得・削除する方法を紹介します。

2.文字列の最後の1文字を取得する

文字列の最後の1文字を取得するには、下記のようにします。

#!/bin/bash
 
foo=abcdefg
echo ${foo: -1}

注:":"と"-1"の間にスペースをいれてください。

実行結果

# ./test.sh
g

これはbashの変数展開(部分展開)で、

${parameter:offset}

を利用したものです。

3.文字列の最後の1文字を削除する

文字列の最後の1文字を削除するには、下記のようにします。

#!/bin/bash
 
foo=abcdefg
echo ${foo/%?/}

実行結果

# ./test.sh
abcdef

これはbashの変数展開(後方一致除去)で、

${parameter%word}

を利用したものです。

Comments [0] | Trackbacks [0]

CSVDataImExporterプラグイン・機能拡張版リリース

February 3,2021 11:55 PM
Category:[インポート・エクスポート]
Tag:[CSVDataImExporter, MovableType, Plugin]
Permalink

Movable Typeの記事データ・コンテンツデータをCSVデータでインポート・エクスポートできる「CSVDataImExporterプラグイン」の機能拡張版をリリースしました。

1.追加機能

システム管理画面よりコンテンツデータのインポート・エクスポートが可能です。これを使用することにより、複数のサイトや複数のコンテンツデータを横断した操作が不要となります(システム管理画面で記事のインポート・エクスポートは行えません)。

エクスポート画面(クリックで拡大、以下同様)

インポート画面

また、ロール編集画面に「コンテンツデータのインポート・エクスポート」および「記事のインポート・エクスポート」権限を追加しました。

ロール編集画面

これにより、権限別にコンテンツデータ・記事のインポート・エクスポートを制御することが可能です。
注:「サイト管理者」ロールは対象外(システム管理者と同等の動作)です。


上記は権限は、権限を与えたユーザーに対し、サイト配下のすべてのコンテンツデータに適用されますが、さらにコンテンツタイプ別に権限を設定したい場合は、「コンテンツタイプごとの権限」での制御も可能です。

ロール編集画面

ユーザーに特定のコンテンツデータのみエクスポート・インポートを許容したい場合はこちらの機能をご利用ください。
注:「サイト管理者」ロールは対象外(システム管理者と同等の動作)です。

2.システム管理画面からコンテンツデータのエクスポート・インポートするCSVフォーマットについて

システム管理画面からのコンテンツデータのエクスポート・インポートのCSVフォーマットは、サイト管理画面からのエクスポート・インポートのCSVフォーマットと異なります。

具体的には、システム管理画面からのエクスポート・インポートのCSVフォーマットは、左の2カラムに、

site_id,site_name

を付与します。site_idはサイトID、site_nameはサイトの名前です。これはシステム管理画面から指定したコンテンツタイプのサイトと、CSVファイルのサイトが適正であることを検証するためです。

サイト管理画面からエクスポートしたCSVファイルをシステム管理画面からインポートするには、上記の2カラムを追加してください。

その他、複数コンテンツタイプの一括エクスポートは行えません。

3.コンテンツデータのインポート・エクスポートの権限設定について

ロール編集画面の「作成と公開」に表示された「コンテンツデータのインポート・エクスポート」権限をチェックすると、自動的に「コンテンツデータの管理」にチェックがつきます。

また、ロール編集画面の「コンテンツタイプごとの権限」の「コンテンツデータのインポート・エクスポート」権限をチェックすると、自動的に「コンテンツデータの作成」にチェックがつきます。

後者の方法で権限を設定した場合、権限が設定されていないコンテンツデータにも「xxxをインポート」「xxxをエクスポート」のリンクが表示されますが、クリックするとダッシュボードにリダイレクトされます。

4.記事のインポート・エクスポートの権限設定について

ロール編集画面の「作成と公開」に表示された「記事のインポート・エクスポート」権限をチェックすると、自動的に「すべての記事の編集」にチェックがつきます。

5.評価版ダウンロード・購入

評価版ダウンロード・ご購入はCSVDataImExporterプラグインのページにアクセスしてください。

Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages