序文 MySQL データベースのデフォルトのデータベース ファイルは /var/lib/mysql にあります。場合によっては、ストレージ計画やその他の理由により、MySQL データベースのデータ ストレージ ディレクトリを変更する必要があることがあります。以下は実際のプロセスの手順の概要です。では早速、見ていきましょう。 方法は次のとおりです。 1: MySQLデータベースの保存ディレクトリを確認する [root@DB-Server tmp]# mysqladmin -u root -p variables | grep datadir パスワードを入力してください: | データディレクトリ | /var/lib/mysql/ 2: MySQLサービスをシャットダウンする MySQL データ ディレクトリを変更する前に、MySQL サービスをシャットダウンする必要があります。 方法1: [root@DB-Server ~]# サービスmysqlステータス MySQL 実行中 (9411) [ OK ] [root@DB-Server ~]# サービスmysql停止 MySQL をシャットダウンしています...[OK] [root@DBサーバー ~]# 方法2: [root@DB-Server ~]# /etc/rc.d/init.d/mysql ステータス MySQL 実行中 (8900) [ OK ] [root@DB-Server ~]# /etc/rc.d/init.d/mysql を停止します MySQL をシャットダウンしています...[OK] [root@DBサーバー ~]# 3: 新しいデータベース保存ディレクトリを作成する [root@DB-Server ~]# cd /u01 [root@DB-Server u01]# mkdir mysqldata 4: MySQLデータディレクトリを新しい場所に移動する [root@DB-Server ~]# mv /var/lib/mysql /u01/mysqldata/ 5: 設定ファイルmy.cnfを変更する すべてのバージョンに my.cnf 構成ファイルが含まれているわけではありません。MySQL 5.5 では、my.cnf 構成ファイルが見つかりません。一部の MySQL バージョンでは、このファイルは /usr/my.cnf にあります。/etc/ ディレクトリに my.cnf 構成ファイルがない場合は、/usr/share/mysql/ で *.cnf ファイルを探し、そのうちの 1 つを /etc/ にコピーして、名前を my.cnf に変更してください。コマンドは次のとおりです。 [root@DB-Server mysql]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf /etc/my.cnfファイルを編集し、ソケットパラメータを変更します。 MySQL 5.5 バージョン # 以下のオプションはすべてのMySQLクライアントに渡されます [クライアント] #パスワード = あなたのパスワード ポート = 3306 ソケット = /u01/mysqldata/mysql/mysql.sock # 以下に特定のプログラムに関するエントリを示します # MySQL サーバー [mysqld] ポート = 3306 ソケット = /u01/mysqldata/mysql/mysql.sock 外部ロックをスキップ キーバッファサイズ = 16M 最大許容パケット = 1M テーブルオープンキャッシュ = 64 ソートバッファサイズ = 512K ネットバッファ長 = 8K 読み取りバッファサイズ = 256K 読み取りバッファサイズ = 512K myisam_sort_buffer_size = 8M 6: 起動スクリプト /etc/init.d/mysql を変更する パラメータdatadirをdatadir=/u01/mysqldata/mysql/に変更します。 7: MySQLサービスを起動し、MySQLデータベースパスを確認する [root@DB-Server ~]# サービスmysql 開始 MySQL を起動しています。[OK] [root@DB-Server ~]# mysqladmin -u root -p variables | grep datadir パスワードを入力してください: | データディレクトリ | /u01/mysqldata/mysql/ 私の質問: 1: データベース保存ディレクトリを変更する前は、/var/lib/mysql/ ディレクトリに mysql.sock ファイルがありません。上記の設定をインストールすると、mysql.sock ファイルが生成されます。 mysql.sock ファイルに関して、情報を検索しました: mysql.sock はソケット接続に使用されるファイルです。つまり、このファイルはデーモンが起動されたときにのみ存在します。ただし、mysql プログラム (このプログラムはクライアント、サーバーは mysqld) は、あらゆるタイプの非ローカル ホストに対して、接続に mysql.sock ファイルを使用するかどうかを選択できます (この方法は、Unix ホスト上のローカル mysqld に接続する場合にのみ適しているため)。このファイルは絶対に必要ですか? これについてはさらに説明が必要です。 2: ネット上でMySQLデータパスを変更する方法をまとめているネットユーザーを見ました。その中には、新しく作成したディレクトリの権限処理を必要とするものもあれば、ディレクトリ権限の承認を必要としないものもあります。私はそれらを処理せず、問題はありませんでした。新しいデータベース ディレクトリを承認する必要がありますか? 3: MySQL_5.6.20バージョンをテストした際、my.cnfは修正せず、起動スクリプト/etc/init.d/mysqlのみ修正しましたが、全く問題ありませんでした。 myssql.sock ファイルも生成されません。 4: selinux が無効になっていない場合、MySQL データ パスを変更した後に MySQL サービスを起動するとエラーが発生する可能性があることに注意してください。この理由としては、バックグラウンド サービスには対応するディレクトリに対する対応する権限が必要であり、mysql のデフォルト パス /var/lib/mysql には対応するポリシーが追加されていることが挙げられます。パスが変更された後、対応するポリシーがないため、バックグラウンド プロセスは selinux によってファイルの読み取りをブロックされ、権限エラーが発生します。 したがって、Selinux をオフにするか、ファイルのセキュリティ コンテキストを変更してください。 [root@DB-Server mysql]# /etc/init.d/mysql を起動します MySQL を起動しています....サーバーは PID ファイル (/u01/mysqldata/mysql//DB-Server.localdomain.pid) を更新せずに終了しました。[失敗] [root@DBサーバーmysql]# [root@DBサーバーmysql]# chcon -R -t mysqld_db_t /u01/mysqldata/mysql/ [root@DB-Server mysql]# /etc/init.d/mysql を起動します MySQL を起動しています。[OK] [root@DBサーバーmysql]# 要約する 上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM を応援していただきありがとうございます。 参考文献: http://database.ctocio.com.cn/tips/449/7566949.shtml https://www.jb51.net/article/150089.htm https://www.jb51.net/article/150090.htm 以下もご興味があるかもしれません:
|
<<: docker-compose を使用して MySQL を実行する方法
>>: vue-cropper コンポーネントは画像の切り取りとアップロードを実現します
前回の記事では、Dockerの基礎知識であるローカルディレクトリのマウント方法を紹介しました。今日は...
Linux ホスト名変更コマンド1. ホスト名を一時的に変更するだけの場合は、hostname コマ...
Elasticsearchは現在非常に人気があり、多くの企業が利用しているため、esを知らないと軽蔑...
最近コンピュータを再インストールした後、最新バージョンのみをインストールするという強迫観念に基づいて...
1. インデックスの重要性インデックスは、列に特定の値を持つ行をすばやく見つけるために使用されます。...
私は最近、最も安い Tencent クラウド サーバーを購入しました。これは主に、Web テクノロジ...
多くの場合、透明度の設定やぼかしなど、写真の背景を加工する必要があります。 ただし、背景画像が配置さ...
目次基本タイプあらゆるタイプ配列タプルインタフェース関数自己推論を入力する結合タイプ(1つ以上選択)...
カウント(*)成し遂げる1. MyISAM: テーブル内の行の総数をディスク上に保存し、フィルタリン...
テーブル名を変更したり、テーブル フィールドを変更したりする必要がある場合は、 MySQL ALTE...
解決: pythearn2 パッケージをダウンロードしたディレクトリで、setup.py ファイルを...
Cocos Creator バージョン: 2.3.4デモのダウンロード: https://files...
IE10 では、<input> と <input type="passw...
1. 宇宙のルールHTML コード内の空白は通常、ブラウザによって無視されます。 <p>...
大画面のデジタル スクロール効果は、最近の作業における大画面 UI ダイアグラムから生まれました。U...