Linux

【Poderosa】SSH接続時に「インデックスが配列の境界外です」エラーについて

Poderosaを使い、SSH接続するため、Ubuntuに接続しようとしたら「インデックスが配列の境界外です」というエラーが出ました。 OS:Ubuntu Desktop 20.04 LTSSSH接続ソフト:Podero […]

【Ubuntu】ノートパソコンのフタを閉じた時、サスペンド(スリープ)にならないように設定する

前回、悪戦苦闘しながらもWindowsが使えなくなったノートパソコンにLinuxOS「Ubuntu」をインストールしました。 Windowsでもそうですが、Ubuntuをインストールしたノートパソコンでも、フタ(画面)を […]...

「Ubuntu」に「VMWare Workstation Player 16」をインストール

「Ubuntu」に「VMWare Workstation Player 16」をインストールしました。 メモとして残しておきます。 「G++」と「make」をインストール 「VMWare Workstation Play […]

「Ubuntu」に「Chromeリモートデスクトップ」をインストールする

「Ubuntu」に「Chromeリモートデスクトップ」をインストールしました。 インストール方法を紹介します。 GoogleChromeをインストール まずはブラウザ「GoogleChrome」をインストールします。 ダ […] The post 「Ubuntu」に「Chromeリモートデスクトップ」をインストールする first appeared on マサのライフワーク....

【苦難のOS切替】ASUSノートパソコンをWindowsからUbuntuに変更!

前回、停止コード:PNP_DETECTED_FATAL_ERRORの発生により、ASUS製のノートパソコン「X751LDV-T4371H」がブルースクリーンに陥ってしまいました。 ブルースクリーンの原因はハードウェアの損 […] The post 【苦難のOS切替】ASUSノートパソコンをWindowsからUbuntuに変更! first appeared on マサのライフワーク....

実行してはいけないLinuxコマンド(19) カーネルをパニックさせる「キル・スイッチ」を実行してみる(2) | マイナビニュース

実行してはいけないLinuxコマンド(19) カーネルをパニックさせる「キル・スイッチ」を実行してみる(2) | マイナビニュース想定外の操作で起こす「キル・スイッチ」 前回はSysRqの仕組みを使ってLinuxカーネルをパニックさせる方法を取り上げた。カーネルをパニックさせたものの、前回取り上げたのは、いわば正規の方法でカーネルをパニックさせる方法だ。今回はそれとは別の方法でカーネルをパニックさせる方法を紹介しよう。 カーネルパニッ... ...

Linuxコマンドでサーバの位置情報を得る方法 | マイナビニュース

Linuxコマンドでサーバの位置情報を得る方法 | マイナビニュースTecmint.comは2019年5月15日(米国時間)、「How to Find Linux Server Geographic Location in Terminal」において、Linuxシステムで、自分が外部からどのIPアドレスで認識されているのか調べる方法と、IPアドレスの位置情報を取得する方法を紹介した。curlコマンドとjqコマンドが使われている。 curlコマンドとjqコマン... ...

中古PC活用:Windows PCにLinuxをインストールして再利用する (1/2) – @IT

中古PC活用:Windows PCにLinuxをインストールして再利用する (1/2) - @IT中古PC活用の第3弾では、本命ともいえるLinuxをインストールする。ただ、Linuxにはさまざまな...

FSF、LinuxとZFSと組み合わせはライセンス違反と指摘 – BIGLOBEニュース

FSF、LinuxとZFSと組み合わせはライセンス違反と指摘 - BIGLOBEニュースFree Software FoundationのRichard Stallman氏は4月11日(米国時間)、「Interpreting, enforcing and changing the GNU GPL, as applied to combining Linux and...

Linuxコンテナ技術「LXD 2.0」登場 | マイナビニュース

Linuxコンテナ技術「LXD 2.0」登場 | マイナビニュースThe Linux container hypervisor LXDチームは4月11日(カナダ時間)、「 LXD 2.0 has been released!|Stéphane Graber's website 」において、LXDの最新版となる「LX...

「Lubuntu 14.04 LTS」でVNCサーバー設定

「Lubuntu 14.04 LTS」でVNCサーバーを立ち上げた。 サーバー自体はESXiの仮想環境。 [参 […]

「Ubuntu」ファミリーのwikipedia

★本家 [参照] Ubuntu – Wikipedia ★公式派生品 […]

XubuntuをESXiにインストール中!

将来、デスクトップOSには「Kubuntu」を使う予定だが、ほど近い将来、仮想サ […]

「Kubuntu」を初めて試してみる!

Ubuntu13におけるrootパスワード設定

masa@ubuntu:~$ sudo passwd root [sudo] password for mas […]

「kernel panic」の意外な?落とし穴

CentOSで「kernel panic」が発生したため起動できなくなった・・・ 記事を探すとselinuxに […]

CentOSのファイル書き換えによるネットワーク設定

★対象ファイル /etc/sysconfig/network-scripts/ifcfg-eth0 ★標準でD […]

shutdownコマンド[Windows / Linux]

Windowsのshutdownコマンド ★直ぐにシャットダウン  ◆Windows shutdown /s […]

CentOSにおけるアカウント毎のcrontabファイル保存先

「crontab」コマンドで確認できるアカウント毎のcrontabファイル /var/spool/cron/ユ […]

「mysqlnd」を使ったPHPによるMySQL接続方法

前回の記事にも書いたが、PHPを5.5にアップデートすると、
「php-mysql」が「php-mysqlnd」に置き換わるため、
以前のMySQLで作られていたユーザーのパスワードが古い形式のままの場合、
DBへ接続できない現象
が発生する。

※yumによるアップデート

php-mysqlnd  i686  5.5.0-0.28.beta4.el6.remi  remi-test  248 k
  replacing  php-mysql.i686 5.4.14-1.el6.remi

DB(mysql-userテーブル)を見てみると、
rootのパスワードは新形式の長いタイプのパスワードだが、
その他は短い古い形式のパスワードだった。

★ユーザーパスワードの確認 (DB:mysql / table:user)
image

★旧形式と新形式のパスワードの違い
image image

よってパスワードを新形式へアップデートする事で解決できる!
 ※DB変更後は、必ずMySQLのサービスを再起動!

SQL:
  1. SET PASSWORD FOR '対象のユーザー名'@'対象のホスト名' = PASSWORD('対象となるユーザのパスワード');

※上記SQLでOKだが直接updateしても変更できる、というか上の方がスマートだと知らなかった^^

SQL:
  1. UPDATE
  2.     `mysql`.`user`
  3. SET
  4.     `Password` = PASSWORD ('対象となるユーザのパスワード')
  5.     WHERE
  6.         `user`.`Host` = '対象のホスト名' --(ユーザー名がユニークの場合は必要なし)
  7.     AND `user`.`User` = '対象のユーザー名'
  8. ;

「mysqlnd」を使ったPHPによるMySQL接続方法

前回の記事にも書いたが、PHPを5.5にアップデートすると、 「php-mysql」が「php-mysqlnd […]

PHPからMySQLに接続できない:mysqlnd

remi-testからPHP5.5にアップデートすると、PHPからMySQLのデータベースに接続できない事態が発生した。

理由は以下の通り。

 ・「php-mysql」が廃止されて、「php-mysqlnd」に置き換わった
 ・「php-mysqlnd」でmysql_connect()系関数を使用した際、MySQLの古いパスワードフォーマット(16バイト)を使うとDBに接続できない

ソース:PHP:下位互換性のない変更点

よって対処方法としては、

 1.「php-mysqlnd」を使わないで「php-mysql」を使う
  ※今後の事を考えれば「php-mysqlnd」を使ったほうがいいかもしれない・・・

 2.MySQLのパスワードを設定し直す

SET PASSWORD FOR 'username'@'hostname' = PASSWORD('パスワード');

 ※ただし、「my.cnf」に

old_passwords=1

  とある場合は旧パスワードが有効になっているので、

old_passwords=0

  と無効にする必要あり。設定が有効の場合に旧パスワードで設定するには

SET PASSWORD FOR 'username'@'hostname' = OLD_PASSWORD('パスワード');

  で設定すればOK。

PHPからMySQLに接続できない:mysqlnd

remi-testからPHP5.5にアップデートすると、PHPからMySQLのデータベースに接続できない事態が […]
タイトルとURLをコピーしました