質問が誤解を招くようでしたらお許しください。ユーザー「mysql」の環境設定がどのように機能するかを理解しようとしています。
フォローしていますこのガイドMariaDB インストールから Oracle DB に接続します。
必要なライブラリをインストールし、ルート コマンド ラインから接続することに成功しました。
しかし、MariaDB から接続しようとすると、次のメッセージが表示されます。
[unixODBC][ドライバー マネージャー]ライブラリ '/home/oraclec/instantclient_12_1/libsqora.so.12.1' を開けません: ファイルが見つかりません
ルート コマンド ラインから初めて接続しようとしたときにも同じことが起こりましたが、/root/.bash_profile
ファイルに次の行を追加することで解決しました。
CLIENT_HOME=/home/oraclec/instantclient_12_1 ; export CLIENT_HOME
LD_LIBRARY_PATH=/home/oraclec/instantclient_12_1 ; export LD_LIBRARY_PATH
そこで、ユーザー「mysql」に対して同じことを実行しようとしていますが、.bash_profile
このユーザーには a がありません。
結論として、ユーザー「mysql」がこれらのパスにアクセスできるようにするには、どこにこれらのパスを配置すればよいでしょうか?
注記:サーバーは CentOS 6.5 を実行しています。
答え1
変数を init スクリプトから mysql に渡すことができます。例/etc/init.d/mysql
:
それでもmysql ユーザー用に.bash_profile
(または)を作成する必要がある場合は、次の操作を行います。.bashrc
vi ~mysql/.bash_profile
そのユーザーのホームがない場合は、ホームを作成して更新します/etc/passwd
。
答え2
すべてのユーザーに対して設定しても問題はありません。ディレクトリ。
LD_LIBRARY_PATH変数を使用する代わりに、ライブラリパスを追加することもできます。設定ファイル追いかけるのを忘れないでくださいldconfig
。