max_sp_recursion_depthを設定すると起動できなくなる

このQ&Aのポイント
  • 質問文章からは、max_sp_recursion_depthを設定するとMySQLが起動できなくなるという問題が発生しています。
  • OpenOALP MYSQLの構築手順を元に設定を行っており、/etc/my.cnfにmax_sp_recursion_depth=255を設定後、再起動するとエラーログが出てmysqlが起動できません。
  • MySQLのインストール時に何かミスがあるのか、設定に誤りがあるのかを教えて頂きたいです。
回答を見る
  • ベストアンサー

max_sp_recursion_depthを設定すると起動できなくなる。

OpenOALP MYSQLの構築手順を元に設定を行っておりますが /etc/my.cnfにmax_sp_recursion_depth=255を設定後、再起動すると 下のerrログが出てmysqlが起動できません。 MySQLのインストール時に何かもれがあるのでしょうか? 教えて頂けますと助かります。 # cat /etc/my.cnf [mysqld] set-variable = key_buffer=256M set-variable = record_buffer=256M set-variable = join_buffer=256M sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION,PIPES_A S_CONCAT" max_sp_recursion_depth=255 errログ 060712 07:45:41 mysqld started 060712 7:45:41 [ERROR] /usr/local/mysql/libexec/mysqld: unknown variable 'max_s p_recursion_depth=255' 060712 07:45:41 mysqld ended Linux EP4.0 java version 1.5.0_07 jakarta-tomcat-5.5.17 httpd-2.0.55 mod_jk2.so mysql-5.0.15 jboss-4.0.4.GA

  • MySQL
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
  • HTTP500
  • ベストアンサー率40% (2/5)
回答No.2

ですねっ失礼しました。 その項目が具体的に何を示す項目なのか詳細は不明ですが 接続セッション内で維持されるもののようです。 つまり 接続してから SET max_sp_recursion_depth = 255 ; とすれば良いようです。 接続した時点で 0 になるようです。 必要なときに行うようにしたほうが良いとは思いますが。

zerokara
質問者

お礼

回答有難う御座います。 >その項目が具体的に何を示す項目なのか詳細は不明ですが 使用するアプリでプロシージャにて再帰呼出を可能にする設定みたいです。 教えて頂いた方法で対応してみたいと思います。 この度は有難う御座いました。

その他の回答 (1)

  • HTTP500
  • ベストアンサー率40% (2/5)
回答No.1

max_sp_recursion_depth=255 ではなく set-variable = max_sp_recursion_depth=255 じゃないでしょうか

zerokara
質問者

お礼

有難う御座います。 その形式でもチャレンジしましたが結果は同じでした(泣) また、教えてください。

関連するQ&A

  • レプリケーションがうまくいきません!

    WINDOWS xp と windows2000 で mysql を起動させて レプリケーションを取りたいと思っています。 バージョンは 4.0.22 同士です。 どうもうまくレプリケーションできません。 my.ini の内容です。 マスター [mysqld] log port=3306 skip-locking default-character-set=sjis max_allowed_packet=16M log-bin server-id=1 binlog_do_db=test set-variable=key_buffer=16M set-variable=thread_stack=128k set-variable=flush_time=1800 basedir=c:/mysql/ datadir=c:/mysql/data/ スレーブ [mysqld] log-bin server-id=101 master-host=10.0.0.1 master-user=rep1 master-password=rep1 replicate-do-db=test master-port=3306 basedir=c:/mysql datadir=c:/mysql/data default-character-set=sjis set-variable=key_buffer=16M ちなみに3306経由のアクセスはできています。 マスター側の show master status; show slave status; では、slave status が Empty set と出ます。 スレーブ側の show master status; show slave status; では、両方出ます。 何がおかしいのでしょうか?

  • FedoraCore4のMYSQLについて

    下記のエラーがでてしまい起動出来ません。 Timeout error occurred trying to start MySQL Daemon. 一度アンインストールして後に再インストールしても同じエラーで起動出来なかったです。勿論、アンインストールする再にフォルダ部分も削除しました。 [root@test ~]# cat /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 [mysql.server] user=mysql basedir=/var/lib default-character-set = utf8 [mysqld_safe] err-log=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid [mysql] default-character-set = utf8 --------------------------------------

  • utf8に設定すると起動できません

    MySQLに詳しい方教えてください。 Movable TypeのDB設定をしたく、/etc/my.cnfの項目に以下の2行を追記しました。 [client] default-character-set=utf8 [mysqld] default-character-set=utf8 mysqlのバージョンは 3.23.58です。 ###mysql Ver 11.18 Distrib 3.23.58, for pc-linux (i686) mysqlを起動しようとすると以下のメッセージが表示されそのあとが進みません。。。 mysql: Character set 'utf8' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index' file このようなときはどうすればよいでしょうか。 ご教授いただけませんでしょうか。 よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • MySQLが起動しない

    このテーマの質問はいくつもあるのですが、解決に結びつくものがなく困っています。 もともと正常に動いていたのですが、再インストールしたところ起動しなくなりました。 再インストールは「yum -y install mysql-server」で行いました。 いろいろと試してはいるのですがうまくいきません。 どなたかお分かりの方がいらっしゃいましたら、ご教授いただけますでしょうか。 よろしくお願いします。 --------------------------  エラーログ -------------------------- 110709 16:46:38 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql 110709 16:46:38 [Note] Plugin 'InnoDB' is disabled. 110709 16:46:38 [Note] Plugin 'FEDERATED' is disabled. 110709 16:46:38 [ERROR] Unknown/unsupported storage engine: InnoDB 110709 16:46:38 [ERROR] Aborting 110709 16:46:38 [Note] /usr/libexec/mysqld: Shutdown complete 110709 16:46:38 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended --------------------------  my.cnf -------------------------- [mysqld] skip-innodb max_connections=30 datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock bind-address=127.0.0.1 # Default to using old password format for compatibility with mysql 3.x # clients (those using the mysqlclient10 compatibility package). old_passwords=1 [mysql.server] user=mysql sort_buffer=512 net_buffer_length=8 [mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid --------------------------  php.ini (一部抜粋) -------------------------- mysql.default_socket = mysql.default_host = mysql.default_user = mysqli.default_port = 3306 --------------------------  サーバー環境 -------------------------- OS: Red Hat Enterprise Linux ES release 4 MySQL: MySQL: 5.5.9-2 [ファイル構成] /var/run/mysqld/mysqld.pid /var/lib/mysql/mysql.sock ※上記のファイルは所定のディレクトリだけでなく、サーバー上に存在しません。 /var/lib/mysql  -mysql/  -performance_schema/  -test/

  • インストール・初期化後、初起動でエラー

    インストール・初期化後、初起動でエラー OS : CentOS 5.3 MySQL 5.0.89 をソースからインストール rootユーザにて # /usr/local/mysql/bin/mysqld_safe --user=mysql & [root@localhost mysql]# Starting mysqld daemon with databases from /usr/local/mysql/var STOPPING server from pid file /usr/local/mysql/var/localhost.localdomain.com.pid 100114 20:02:07 mysqld ended エラーログをみる # cat var/localhost.localdomain.com.err ... /usr/local/mysql/libexec/mysqld: Can't create/write to file '/usr/local/mysql/var/ib6TIfDM' (Errcode: 13) 100114 20:02:07 InnoDB: Error: unable to create temporary file; errno: 13 100114 20:02:07 [ERROR] /usr/local/mysql/libexec/mysqld: Can't create/write to file '/usr/local/mysql/var/localhost.localdomain.com.pid' (Errcode: 13) 100114 20:02:07 [ERROR] Can't start server: can't create PID file: Permission denied 100114 20:02:07 mysqld ended /usr/local/mysql/var の所有者・権限は、mysql:mysql 700で "# /usr/local/mysql/bin/mysqld_safe --user=mysql &" は mysqlユーザで起動するという意味ですよね(?) /usr/local/mysql/my.cnf の [mysqld] には、 tmpdir = /usr/local/mysql/var/ を書いてます。 my.cnf は /etc/my.cnf にあります。 なぜ書き込めないのでしょうか? どなたかご教示お願い致します。 因みに、これは関係ないと思いますが、 /usr/local/mysql の所有者・権限は root:mysql 700 です。

    • ベストアンサー
    • MySQL
  • MySQLの導入

    VineLinux上にApache,PHP,MySQLを構築しています。 Apache,PHPまではブラウザで表示させられるようになりましたが MySQLの導入で /etc/my.cnf を設定後 # /etc/init.d/mysql restart Killing mysqld with pid 2297 Wait for mysqld to exit done となってしまいました。 どのように解決したらよろしいでしょうか。 ご指導お願い致します。

  • MySQLの文字コードが変更されない

    お世話になっています。 EUCでPHPを書いています。 DBから取ったデータが文字化けしてしまいます。 全ての文字コードをujisにしたいのですが、変更できず困っています。 現在は以下のようになっています。 ――――――――――――――――――――――――――――――――――――― ■環境 Windows7(64bit) Mysql 5.5 ――――――――――――――――――――――――――――――――――――― ■my.iniのパス C:\ProgramData\MySQL\MySQL Server 5.5\my.ini ――――――――――――――――――――――――――――――――――――― ■サービスの起動パス "C:\Program Files\MySQL\MySQL Server 5.5\bin\mysqld" --defaults-file="C:\ProgramData\MySQL\MySQL Server 5.5\my.ini" MySQL55 (my.iniでポート変えたらCLIから接続できなくなったので、設定は反映していると思います。) ――――――――――――――――――――――――――――――――――――― ■my.ini [client] port=3306 default-character-set=ujis [mysql] default-character-set=ujis [mysqld] port=3306 character-set-server=ujis init-connect=SET NAMES ujis skip-character-set-client-handshake default-character-set=ujis default-storage-engine=INNODB sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION" max_connections=100 query_cache_size=0 table_cache=256 tmp_table_size=10M thread_cache_size=8 myisam_max_sort_file_size=100G myisam_sort_buffer_size=69M key_buffer_size=55M read_buffer_size=64K read_rnd_buffer_size=256K sort_buffer_size=256K innodb_additional_mem_pool_size=3M innodb_flush_log_at_trx_commit=1 innodb_log_buffer_size=2M innodb_buffer_pool_size=107M innodb_log_file_size=54M innodb_thread_concurrency=10 [mysqldump] default-character-set=ujis skip-opt create-options set-charset hex-blob single-transaction ――――――――――――――――――――――――――――――――――――― ■コマンドラインからの確認 mysql> status; --------------------------------- Server characterset: utf8 Db characterset: utf8 Client characterset: ujis Conn. characterset: ujis ――――――――――――――――――――――――――――――――――――― 何かヒントを頂けないでしょうか。

  • MySQLが起動できない

    さくらのVPSを借りて構築を行っています。 基本的にMySQLだけを導入して運営させていてしばらく問題もなかったのですが、 最近、Perlなどを導入して権限周りに色々悩まされていました。 で、何が原因かはわかっていないのですが、MySQLが起動できなくなりました。 /etc/rc.d/init.d/mysqld restart を行うと、停止は出来るのですが起動に失敗します。 /var/log/mysqld.log を見てみると、 InnoDB: The InnoDB memory heap is disabled InnoDB: Mutexes and rw_locks use GCC atomic builtins InnoDB: Compressed tables use zlib 1.2.3 InnoDB: Using Linux native AIO InnoDB: Initializing buffer pool, size = 128.0M InnoDB: Completed initialization of buffer pool InnoDB: highest supported file format is Barracuda. InnoDB: Waiting for the background threads to start InnoDB: 1.1.8 started; log sequence number 1595675 [ERROR] /usr/libexec/mysqld: Error writing file '/var/run/mysqld/mysqld.pid' (Errcode: 28) [ERROR] Can't start server: can't create PID file: No space left on device mysqld_safe Number of processes running now: 0 mysqld_safe mysqld restarted [Note] Plugin 'FEDERATED' is disabled. と書かれており、権限で起動が出来なくなってるのかと思い、 ls -ld /var/run/mysqld/ で調べてみると、 drwxr-xr-x 2 mysql mysql 4096 11月 1 23:52 /var/run/mysqld/ と、MySQLをインストールした時と同様に、ユーザーはmysqlのままでした。 一応、chown -R mysql:mysql /var/run/mysqld/ でもう一度設定しなおして再起動を試みましたが、起動のみやはり失敗して、同じエラーログとなっています。 Apacheの起動・停止は問題ありません。 OSはCentos5.7でApache2.2ですが、どうも権限周りの設定が良くわかっておりません。 どうにか再インストール無しでMySQLを起動させたいのですが、ご教示頂けますと幸いです。 宜しくお願い申し上げます。

    • ベストアンサー
    • MySQL
  • mysqlのデータディレクトリの変更

    debian8を再インストールし、データベースをインポートしました。 Mysqlのディレクトリが/var/mysqlになっているらしく、/var/mysqlniにインポートされています。そのDBを利用しているwordpressは正常にデータが表示されます。 しかし/varのパーティショサイズは、多く確保できないので、DBが/varを圧迫してしまうので。mysqlのDBを容量に余裕がある/home/mysql_data配下に設定変更したいのです。ネットで調べると/etc/my.cnfと言うファイルに [mysqld] # datadir=/var/lib/mysql datadir=/home/mysql_data # socket=/var/lib/mysql/mysql.sock socket=/home/mysql_data/mysql.sock 変更を加えることで実現できるという記事があるが、,my.cnfというファイルは /var/lib/dpkg/alternatives/my.cnf /etc/mysql/my.cnf /etc/alternatives/my.cnf に存在するが、datadirの記述されている部分は無い。 /etc/mysql/mariadb.conf.d/50-server.cnf に user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp lc-messages-dir = /usr/share/mysql skip-external-locking ・ ・ ・ また /home 配下に「datadir」を設置する場合。 To run MariaDB SQL from /home, in the file /usr/lib/systemd/system/mariadb.service, just change : $ sudo vi /usr/lib/systemd/system/mariadb.service ProtectHome=true to : ProtectHome=false とする記述に変更し datadirに/home/mysql_dataと変更して systemctl start mariadb.serviceをしても、mysqlの起動がエラーになってしまう。 debian8でmysqlのデータディレクトリを変更する方法を教えてください。

    • ベストアンサー
    • MySQL
  • さくらインターネットのMySQL の文字セット

    さくらでMySQLを使いたいのですが、文字コードをUTF-8からSJISにしたいのです。 無知識で初め、検索やログを頼りにチャレンジしたのですがいまいち設定がわかりません。 my.cnfに [mysqld] default-character-set=sjis skip-character-set-client-handshake と、書けばいい、などの情報もあったのですが、そもそも「my.cnf」がどこに存在するのかすら分かりません。どなたか教えていただけませんでしょうか。 MySQL 5.1

    • ベストアンサー
    • MySQL