質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CodeIgniter

CodeIgniterは、PHP向けオープンソースのWebアプリケーションフレームワークです。CodeIgniterは覚える構文が少なく、自由度も高いため、PHPを理解していれば構築が簡単です。

Q&A

解決済

1回答

2581閲覧

MySQL5.7でセッション系のエラーが出て困っています

hidepon

総合スコア206

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Apache

Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

CodeIgniter

CodeIgniterは、PHP向けオープンソースのWebアプリケーションフレームワークです。CodeIgniterは覚える構文が少なく、自由度も高いため、PHPを理解していれば構築が簡単です。

0グッド

0クリップ

投稿2016/12/09 08:33

編集2016/12/09 10:25

CentOS 7.2
Apache 2.4
PHP7.0.14
MySQL5.7
CodeIgniter3.1X
の環境で開発をしています。
・Apacheの稼働を確認 OK
・PHPの動作確認 OK
・MySQLの動作確認 OK
XAMPP環境にあるソースをUPLOADすると
下記のようなエラーが発生しました。

Error Number: 3057 Incorrect user-level lock name '5kf8qp874b7p71m0sk5jau3knomtt30mma334phj8i360c6id5a6psvorr2r8sb8s4sfrgpbn9q84oa0udnfhbvb831tb1dbo9najo1'. SELECT GET_LOCK('5kf8qp874b7p71m0sk5jau3knomtt30mma334phj8i360c6id5a6psvorr2r8sb8s4sfrgpbn9q84oa0udnfhbvb831tb1dbo9najo1', 300) AS ci_session_lock

IPV6が原因だとかいう情報があったりするのですが、根本的な原因が分からないので、苦慮しています。

対処法をご存知の方がいらっしゃったら教えてください。
宜しくお願いいたします。
(追加)
ちなみにPHPの直前のバージョンであるPHP7.0.13ではこの問題は発生しませんでした。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

MySQL 5.7.5 以降、
「GET_LOCK() 関数のロック名は 64文字以内でなければならない」
という制限が加えられたようです。

https://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html#function_get-lock

MySQL 5.7.5 and later enforces a maximum length on lock names of 64 characters. Previously, no limit was enforced.

実際、私の手元の環境(MySQL 5.7.11)では、以下のような結果となりました。

sql

1# 64文字 2mysql> SELECT GET_LOCK('5kf8qp874b7p71m0sk5jau3knomtt30mma334phj8i360c6id5a6psvorr2r8sb8', 300) AS ci_session_lock; 3+-----------------+ 4| ci_session_lock | 5+-----------------+ 6| 1 | 7+-----------------+ 81 row in set (0.00 sec) 9 10# 65文字 11mysql> SELECT GET_LOCK('5kf8qp874b7p71m0sk5jau3knomtt30mma334phj8i360c6id5a6psvorr2r8sb8s', 300) AS ci_session_lock; 12ERROR 3057 (42000): Incorrect user-level lock name '5kf8qp874b7p71m0sk5jau3knomtt30mma334phj8i360c6id5a6psvorr2r8sb8s'.

投稿2016/12/09 10:42

KiyoshiMotoki

総合スコア4791

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hidepon

2016/12/09 13:39

ご返答を頂き有難うございます。なぜ、PHPのバージョンが上がったらいきなりこのような現象になるのかが不明で困っています。(PHPのバージョンが7.014になったこと関係があるのでしょうか?) 回避策があれば教えて頂ければと思います。CodeIgniterの最新ではならないとかでしょうか? ご教授頂ければと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問