[前][次][番号順一覧][スレッド一覧]

mysql:9936

From: Takahiro Yamasaki <Takahiro Yamasaki <yamasaki@xxxxxxxxxx>>
Date: Fri, 30 Jul 2004 19:17:52 +0900
Subject: [mysql 09936] exit時の「セグメンテーション違反」メッセージ?

初めまして山崎と申します。

OS Redhat9 Linux
MySql4.1.3-beta

にてインストール、初期の設定では特に問題は発生しておらず
特にエラーも無く起動しているのですが、最近になって
"exit"時に「セグメンテーション違反です」とのメッセージが
でるようになってしまいました。

作成したテーブルにエラーがあるのかと思い"myisamchk"で
チェックをかけたところエラーのあるテーブルがあったので
念のため全てのDBをdropして作成し直しました。

特に重大なものでは無いので放っておいても良いのかなと思いつつも
納得がいきません。

my.cnfの内容は下記の通りです。(長くなって申し訳ない)

------------------------------------------------------------------------

 # Example MySQL config file for large systems.
 #
 # This is for a large system with memory = 512M where the system runs 
mainly
 # MySQL.
 #
 # You can copy this file to
 # /etc/my.cnf to set global options,
 # mysql-data-dir/my.cnf to set server-specific options (in this
 # installation this directory is /var/lib/mysql) or
 # ~/.my.cnf to set user-specific options.
 #
 # In this file, you can use all long options that a program supports.
 # If you want to know which options a program supports, run the program
 # with the "--help" option.
 
 # The following options will be passed to all MySQL clients
 [client]
 #password       = your_password
 port            = 3306
 socket          = /tmp/mysql_sock
 
 # Here follows entries for some specific programs
 
 # The MySQL server
 [mysqld]
 port            = 3306
 socket          = /tmp/mysql_sock
 skip-locking
 key_buffer = 256M
 max_allowed_packet = 1M
 table_cache = 256
 sort_buffer_size = 1M
 read_buffer_size = 1M
 read_rnd_buffer_size = 4M
 myisam_sort_buffer_size = 64M
 thread_cache = 8
 query_cache_size= 16M
 # Try number of CPU's*2 for thread_concurrency
 thread_concurrency = 8
 
 # Don't listen on a TCP/IP port at all. This can be a security 
enhancement,
 # if all processes that need to connect to mysqld run on the same host.
 # All interaction with mysqld must be made via Unix sockets or named 
pipes.
 # Note that using this option without enabling named pipes on Windows
 # (via the "enable-named-pipe" option) will render mysqld useless!
 #
 #skip-networking
 
 # Replication Master Server (default)
 # binary logging is required for replication
 log-bin
 
 # required unique id between 1 and 2^32 - 1
 # defaults to 1 if master-host is not set
 # but will not function as a master if omitted
 server-id       = 1
 
 # Replication Slave (comment out master section to use this)
 #
 # To configure this host as a replication slave, you can choose between
 # two methods :
 #
 # 1) Use the CHANGE MASTER TO command (fully described in our manual) -
 #    the syntax is:
 #
 #    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
 #    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
 #
 #    where you replace <host>, <user>, <password> by quoted strings and
 #    <port> by the master's port number (3306 by default).
 #
 #    Example:
 #
 #    CHANGE MASTER TO MASTER_HOST='125.564.12.1', MASTER_PORT=3306,
 #    MASTER_USER='joe', MASTER_PASSWORD='secret';
 #
 # OR
 #
 # 2) Set the variables below. However, in case you choose this method, 
then
 #    start replication for the first time (even unsuccessfully, for 
example
 #    if you mistyped the password in master-password and the slave 
fails to
 #    connect), the slave will create a master.info file, and any later
 #    change in this file to the variables' values below will be ignored 
and
 #    overridden by the content of the master.info file, unless you 
shutdown
 #    the slave server, delete master.info and restart the slaver server.
 #    For that reason, you may want to leave the lines below untouched
 #    (commented) and instead use CHANGE MASTER TO (see above)
 #
 # required unique id between 2 and 2^32 - 1
 # (and different from the master)
 # defaults to 2 if master-host is set
 # but will not function as a slave if omitted
 #server-id       = 2
 #
 # The replication master for this slave - required
 #master-host     =   <hostname>
 #
 # The username the slave will use for authentication when connecting
 # to the master - required
 #master-user     =   <username>
 #
 # The password the slave will authenticate with when connecting to
 # the master - required
 #master-password =   <password>
 #
 # The port the master is listening on.
 # optional - defaults to 3306
 #master-port     =  <port>
 #
 # binary logging - not required for slaves, but recommended
 #log-bin
 
 # Point the following paths to different dedicated disks
 tmpdir          = /tmp/
 #log-update     = /path-to-dedicated-directory/hostname
 
 # Uncomment the following if you are using BDB tables
 #bdb_cache_size = 64M
 #bdb_max_lock = 100000
 
 # Uncomment the following if you are using InnoDB tables
 #innodb_data_home_dir = /var/lib/mysql/
 #innodb_data_file_path = ibdata1:10M:autoextend
 #innodb_log_group_home_dir = /var/lib/mysql/
 #innodb_log_arch_dir = /var/lib/mysql/
 # You can set .._buffer_pool_size up to 50 - 80 %
 # of RAM but beware of setting memory usage too high
 #innodb_buffer_pool_size = 256M
 #innodb_additional_mem_pool_size = 20M
 # Set .._log_file_size to 25 % of buffer pool size
 #innodb_log_file_size = 64M
 #innodb_log_buffer_size = 8M
 #innodb_flush_log_at_trx_commit = 1
 #innodb_lock_wait_timeout = 50
 
 [mysqldump]
 quick
 max_allowed_packet = 16M
 
 [mysql]
 no-auto-rehash
 # Remove the next comment character if you are not familiar with SQL
 #safe-updates
 
 [isamchk]
 key_buffer = 128M
 sort_buffer_size = 128M
 read_buffer = 2M
 write_buffer = 2M
 
 [myisamchk]
 key_buffer = 128M
 sort_buffer_size = 128M
 read_buffer = 2M
 write_buffer = 2M
 
 [mysqlhotcopy]
 interactive-timeout

------------------------------------------------------------------------

参考までに起動スクリプトは下記のとおりです。

------------------------------------------------------------------------

#!/bin/bash
#
# mysqld        This shell script takes care of starting and stopping
#               the MySQL subsystem (mysqld).
#
# chkconfig: - 78 12
# description:  MySQL database server.
# processname: mysqld
# config: /etc/my.cnf
# pidfile: /var/lib/mysql/xxx.xxx.xx.jp.pid

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network


prog="MySQL"

datadir="/var/lib/mysql"

start(){
        touch /var/log/mysqld.log
        chown mysql.mysql /var/log/mysqld.log
        chmod 0640 /var/log/mysqld.log
        if [ ! -d $datadir/mysql ] ; then
            action $"Initializing MySQL database: " /usr/local/bin/
mysql_install_db
            ret=$?
            chown -R mysql.mysql $datadir
            if [ $ret -ne 0 ] ; then
                return $ret
            fi
        fi
        chown -R mysql.mysql $datadir
        chmod 0755 $datadir
        /usr/local/bin/mysqld_safe  --defaults-file=/etc/my.cnf >/dev/
null 2>&1 &
        ret=$?
        if [ $ret -eq 0 ]; then
            action $"Starting $prog: " /bin/true
        else
            action $"Starting $prog: " /bin/false
        fi
        [ $ret -eq 0 ] && touch /var/lock/subsys/mysqld
        return $ret
}

stop(){
        /bin/kill `cat /var/lib/mysql/xxx.xxx.xx.jp.pid  2> /dev/null ` 
> /dev/null 2>&1
        ret=$?
        if [ $ret -eq 0 ]; then
            action $"Stopping $prog: " /bin/true
        else
            action $"Stopping $prog: " /bin/false
        fi
        [ $ret -eq 0 ] && rm -f /var/lock/subsys/mysqld
        [ $ret -eq 0 ] && rm -f /tmp/mysql_sock
        return $ret
}

restart(){
    stop
    start
}

condrestart(){
    [ -e /var/lock/subsys/mysqld ] && restart || :
}

# See how we were called.
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
    status mysqld
    ;;
  restart)
    restart
    ;;
  condrestart)
    condrestart
    ;;
  *)
    echo $"Usage: $0 {start|stop|status|condrestart|restart}"
    exit 1
esac

exit $?

------------------------------------------------------------------------

MySql自体の動作は、全く問題が内容でログにエラーも出ていません。
これは放っておいても良いものなのでしょうか?


[前][次][番号順一覧][スレッド一覧]