SQL ERROR [ mysql4 ]

Folosiţi acest forum pentru a discuta problemele apărute în timpul folosirii forumului phpBB 3.0.x.
Reguli forum
Aveti o problema si vreti sa primiti ajutor? Click aici ! Nu uitati si de regulamentul forumului !
Închis
redbull
Utilizator înregistrat
Mesaje: 139
Membru din: 20-Ian-2011, 13:59:46
Versiune: 3.0.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Neexperimentat
Nivel php: Mediu
Contact:

SQL ERROR [ mysql4 ]

Mesaj de redbull »

Revin cu o problema. de data asta una foarte urata. in timp ce navighez pe forum sunt perioade cand apare acesta eroare:

Cod: Selectaţi tot

General Error

SQL ERROR [ mysql4 ]

Query execution was interrupted [1317]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
Si nu stiu de la ce ar putea fii? Tema este http://www.awesomestyles.com/phpbb3-styles/demo/anfild iar moduri nu am instalate decat cel pentru a arata ultimele mesaje.http://www.phpbb.com/community/viewtopi ... 0&t=544839 instalat manual fara erori. si a functionat foarte bine pana acum,
Modificari am mai facut la culoarea din header si din bare,dar au fost facute prin inlocuire. ce am mai schimbat in cod este scoaterea ceasului. si introducerea unui cod pentru anunturi. daca este necesar link catre forum.http://realitateafaracenzura.ro/forum/

La cautarile pe forum nu am gasit nrerori^[1317] doar alttele. eu cred ca este de la serviciul de host. dar vreau sa fiu sigur?

Revin cu cu cateva detali despre eroare.:

Cod: Selectaţi tot

Eroare generală
SQL ERROR [ mysql4 ]

Query execution was interrupted [1317]

SQL

SELECT COUNT(DISTINCT s.session_ip) as num_guests FROM phpbb_sessions s WHERE s.session_user_id = 1 AND s.session_time >= 1298229840

BACKTRACE

FILE: includes/db/mysql.php
LINE: 175
CALL: dbal->sql_error()

FILE: includes/functions.php
LINE: 3923
CALL: dbal_mysql->sql_query()

FILE: includes/functions.php
LINE: 3957
CALL: obtain_guest_count()

FILE: includes/functions.php
LINE: 4293
CALL: obtain_users_online()

FILE: index.php
LINE: 131
CALL: page_header()
Continutul includes/db/mysql.php. este

Cod: Selectaţi tot

<?php
/**
*
* @package dbal
* @version $Id$
* @copyright (c) 2005 phpBB Group
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*
*/

/**
* @ignore
*/
if (!defined('IN_PHPBB'))
{
	exit;
}

include_once($phpbb_root_path . 'includes/db/dbal.' . $phpEx);

/**
* MySQL4 Database Abstraction Layer
* Compatible with:
* MySQL 3.23+
* MySQL 4.0+
* MySQL 4.1+
* MySQL 5.0+
* @package dbal
*/
class dbal_mysql extends dbal
{
	var $multi_insert = true;

	/**
	* Connect to server
	* @access public
	*/
	function sql_connect($sqlserver, $sqluser, $sqlpassword, $database, $port = false, $persistency = false, $new_link = false)
	{
		$this->persistency = $persistency;
		$this->user = $sqluser;
		$this->server = $sqlserver . (($port) ? ':' . $port : '');
		$this->dbname = $database;

		$this->sql_layer = 'mysql4';

		$this->db_connect_id = ($this->persistency) ? @mysql_pconnect($this->server, $this->user, $sqlpassword) : @mysql_connect($this->server, $this->user, $sqlpassword, $new_link);

		if ($this->db_connect_id && $this->dbname != '')
		{
			if (@mysql_select_db($this->dbname, $this->db_connect_id))
			{
				// Determine what version we are using and if it natively supports UNICODE
				if (version_compare($this->sql_server_info(true), '4.1.0', '>='))
				{
					@mysql_query("SET NAMES 'utf8'", $this->db_connect_id);

					// enforce strict mode on databases that support it
					if (version_compare($this->sql_server_info(true), '5.0.2', '>='))
					{
						$result = @mysql_query('SELECT @@session.sql_mode AS sql_mode', $this->db_connect_id);
						$row = @mysql_fetch_assoc($result);
						@mysql_free_result($result);
						$modes = array_map('trim', explode(',', $row['sql_mode']));

						// TRADITIONAL includes STRICT_ALL_TABLES and STRICT_TRANS_TABLES
						if (!in_array('TRADITIONAL', $modes))
						{
							if (!in_array('STRICT_ALL_TABLES', $modes))
							{
								$modes[] = 'STRICT_ALL_TABLES';
							}

							if (!in_array('STRICT_TRANS_TABLES', $modes))
							{
								$modes[] = 'STRICT_TRANS_TABLES';
							}
						}

						$mode = implode(',', $modes);
						@mysql_query("SET SESSION sql_mode='{$mode}'", $this->db_connect_id);
					}
				}
				else if (version_compare($this->sql_server_info(true), '4.0.0', '<'))
				{
					$this->sql_layer = 'mysql';
				}

				return $this->db_connect_id;
			}
		}

		return $this->sql_error('');
	}

	/**
	* Version information about used database
	* @param bool $raw if true, only return the fetched sql_server_version
	* @param bool $use_cache If true, it is safe to retrieve the value from the cache
	* @return string sql server version
	*/
	function sql_server_info($raw = false, $use_cache = true)
	{
		global $cache;

		if (!$use_cache || empty($cache) || ($this->sql_server_version = $cache->get('mysql_version')) === false)
		{
			$result = @mysql_query('SELECT VERSION() AS version', $this->db_connect_id);
			$row = @mysql_fetch_assoc($result);
			@mysql_free_result($result);

			$this->sql_server_version = $row['version'];

			if (!empty($cache) && $use_cache)
			{
				$cache->put('mysql_version', $this->sql_server_version);
			}
		}

		return ($raw) ? $this->sql_server_version : 'MySQL ' . $this->sql_server_version;
	}

	/**
	* SQL Transaction
	* @access private
	*/
	function _sql_transaction($status = 'begin')
	{
		switch ($status)
		{
			case 'begin':
				return @mysql_query('BEGIN', $this->db_connect_id);
			break;

			case 'commit':
				return @mysql_query('COMMIT', $this->db_connect_id);
			break;

			case 'rollback':
				return @mysql_query('ROLLBACK', $this->db_connect_id);
			break;
		}

		return true;
	}

	/**
	* Base query method
	*
	* @param	string	$query		Contains the SQL query which shall be executed
	* @param	int		$cache_ttl	Either 0 to avoid caching or the time in seconds which the result shall be kept in cache
	* @return	mixed				When casted to bool the returned value returns true on success and false on failure
	*
	* @access	public
	*/
	function sql_query($query = '', $cache_ttl = 0)
	{
		if ($query != '')
		{
			global $cache;

			// EXPLAIN only in extra debug mode
			if (defined('DEBUG_EXTRA'))
			{
				$this->sql_report('start', $query);
			}

			$this->query_result = ($cache_ttl && method_exists($cache, 'sql_load')) ? $cache->sql_load($query) : false;
			$this->sql_add_num_queries($this->query_result);

			if ($this->query_result === false)
			{
				if (($this->query_result = @mysql_query($query, $this->db_connect_id)) === false)
				{
					$this->sql_error($query);
				}

				if (defined('DEBUG_EXTRA'))
				{
					$this->sql_report('stop', $query);
				}

				if ($cache_ttl && method_exists($cache, 'sql_save'))
				{
					$this->open_queries[(int) $this->query_result] = $this->query_result;
					$cache->sql_save($query, $this->query_result, $cache_ttl);
				}
				else if (strpos($query, 'SELECT') === 0 && $this->query_result)
				{
					$this->open_queries[(int) $this->query_result] = $this->query_result;
				}
			}
			else if (defined('DEBUG_EXTRA'))
			{
				$this->sql_report('fromcache', $query);
			}
		}
		else
		{
			return false;
		}

		return $this->query_result;
	}

	/**
	* Build LIMIT query
	*/
	function _sql_query_limit($query, $total, $offset = 0, $cache_ttl = 0)
	{
		$this->query_result = false;

		// if $total is set to 0 we do not want to limit the number of rows
		if ($total == 0)
		{
			// Having a value of -1 was always a bug
			$total = '18446744073709551615';
		}

		$query .= "\n LIMIT " . ((!empty($offset)) ? $offset . ', ' . $total : $total);

		return $this->sql_query($query, $cache_ttl);
	}

	/**
	* Return number of affected rows
	*/
	function sql_affectedrows()
	{
		return ($this->db_connect_id) ? @mysql_affected_rows($this->db_connect_id) : false;
	}

	/**
	* Fetch current row
	*/
	function sql_fetchrow($query_id = false)
	{
		global $cache;

		if ($query_id === false)
		{
			$query_id = $this->query_result;
		}

		if (isset($cache->sql_rowset[$query_id]))
		{
			return $cache->sql_fetchrow($query_id);
		}

		return ($query_id !== false) ? @mysql_fetch_assoc($query_id) : false;
	}

	/**
	* Seek to given row number
	* rownum is zero-based
	*/
	function sql_rowseek($rownum, &$query_id)
	{
		global $cache;

		if ($query_id === false)
		{
			$query_id = $this->query_result;
		}

		if (isset($cache->sql_rowset[$query_id]))
		{
			return $cache->sql_rowseek($rownum, $query_id);
		}

		return ($query_id !== false) ? @mysql_data_seek($query_id, $rownum) : false;
	}

	/**
	* Get last inserted id after insert statement
	*/
	function sql_nextid()
	{
		return ($this->db_connect_id) ? @mysql_insert_id($this->db_connect_id) : false;
	}

	/**
	* Free sql result
	*/
	function sql_freeresult($query_id = false)
	{
		global $cache;

		if ($query_id === false)
		{
			$query_id = $this->query_result;
		}

		if (isset($cache->sql_rowset[$query_id]))
		{
			return $cache->sql_freeresult($query_id);
		}

		if (isset($this->open_queries[(int) $query_id]))
		{
			unset($this->open_queries[(int) $query_id]);
			return @mysql_free_result($query_id);
		}

		return false;
	}

	/**
	* Escape string used in sql query
	*/
	function sql_escape($msg)
	{
		if (!$this->db_connect_id)
		{
			return @mysql_real_escape_string($msg);
		}

		return @mysql_real_escape_string($msg, $this->db_connect_id);
	}

	/**
	* Build LIKE expression
	* @access private
	*/
	function _sql_like_expression($expression)
	{
		return $expression;
	}

	/**
	* Build db-specific query data
	* @access private
	*/
	function _sql_custom_build($stage, $data)
	{
		switch ($stage)
		{
			case 'FROM':
				$data = '(' . $data . ')';
			break;
		}

		return $data;
	}

	/**
	* return sql error array
	* @access private
	*/
	function _sql_error()
	{
		if (!$this->db_connect_id)
		{
			return array(
				'message'	=> @mysql_error(),
				'code'		=> @mysql_errno()
			);
		}

		return array(
			'message'	=> @mysql_error($this->db_connect_id),
			'code'		=> @mysql_errno($this->db_connect_id)
		);
	}

	/**
	* Close sql connection
	* @access private
	*/
	function _sql_close()
	{
		return @mysql_close($this->db_connect_id);
	}

	/**
	* Build db-specific report
	* @access private
	*/
	function _sql_report($mode, $query = '')
	{
		static $test_prof;

		// current detection method, might just switch to see the existance of INFORMATION_SCHEMA.PROFILING
		if ($test_prof === null)
		{
			$test_prof = false;
			if (version_compare($this->sql_server_info(true), '5.0.37', '>=') && version_compare($this->sql_server_info(true), '5.1', '<'))
			{
				$test_prof = true;
			}
		}

		switch ($mode)
		{
			case 'start':

				$explain_query = $query;
				if (preg_match('/UPDATE ([a-z0-9_]+).*?WHERE(.*)/s', $query, $m))
				{
					$explain_query = 'SELECT * FROM ' . $m[1] . ' WHERE ' . $m[2];
				}
				else if (preg_match('/DELETE FROM ([a-z0-9_]+).*?WHERE(.*)/s', $query, $m))
				{
					$explain_query = 'SELECT * FROM ' . $m[1] . ' WHERE ' . $m[2];
				}

				if (preg_match('/^SELECT/', $explain_query))
				{
					$html_table = false;

					// begin profiling
					if ($test_prof)
					{
						@mysql_query('SET profiling = 1;', $this->db_connect_id);
					}

					if ($result = @mysql_query("EXPLAIN $explain_query", $this->db_connect_id))
					{
						while ($row = @mysql_fetch_assoc($result))
						{
							$html_table = $this->sql_report('add_select_row', $query, $html_table, $row);
						}
					}
					@mysql_free_result($result);

					if ($html_table)
					{
						$this->html_hold .= '</table>';
					}

					if ($test_prof)
					{
						$html_table = false;

						// get the last profile
						if ($result = @mysql_query('SHOW PROFILE ALL;', $this->db_connect_id))
						{
							$this->html_hold .= '<br />';
							while ($row = @mysql_fetch_assoc($result))
							{
								// make <unknown> HTML safe
								if (!empty($row['Source_function']))
								{
									$row['Source_function'] = str_replace(array('<', '>'), array('<', '>'), $row['Source_function']);
								}

								// remove unsupported features
								foreach ($row as $key => $val)
								{
									if ($val === null)
									{
										unset($row[$key]);
									}
								}
								$html_table = $this->sql_report('add_select_row', $query, $html_table, $row);
							}
						}
						@mysql_free_result($result);

						if ($html_table)
						{
							$this->html_hold .= '</table>';
						}

						@mysql_query('SET profiling = 0;', $this->db_connect_id);
					}
				}

			break;

			case 'fromcache':
				$endtime = explode(' ', microtime());
				$endtime = $endtime[0] + $endtime[1];

				$result = @mysql_query($query, $this->db_connect_id);
				while ($void = @mysql_fetch_assoc($result))
				{
					// Take the time spent on parsing rows into account
				}
				@mysql_free_result($result);

				$splittime = explode(' ', microtime());
				$splittime = $splittime[0] + $splittime[1];

				$this->sql_report('record_fromcache', $query, $endtime, $splittime);

			break;
		}
	}
}

?>

Cu celalalt continut trebuie sa scriu un alt mesaj imi spune ca am depasit minimu-l de caractere

Se pare ca primesc la fel. depasesc nr. de caractere. pentru a trece tot continutul va trebui sa scriu vreo 4 mesaje. asa ca am arhivat fisierele..link arhiva http://www.fileshare.ro/15687589302.1
Se pare ca nu este problema de la host? Poate imi puteti spune de la ce este aceasta eroare si eventual o rezolvare.
Avatar utilizator
dorin
Fost coleg
Mesaje: 4620
Membru din: 24-Iun-2003, 23:23:29
Versiune: 3.1.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Mediu
Nivel php: Puţin experimentat
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de dorin »

Par a fi mai multe erori, una gasita de mine este:

Cod: Selectaţi tot

[General ErrorSQL ERROR [ mysql4 ]

User a8603497_ady already has more than 'max_user_connections' active connections [1203]

An sql error occurred while fetching this page. Please contact an administrator if this problem persists.
Instalarea este noua, este un upgrade sau forumul este mutat de pe un alt server ?
redbull
Utilizator înregistrat
Mesaje: 139
Membru din: 20-Ian-2011, 13:59:46
Versiune: 3.0.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Neexperimentat
Nivel php: Mediu
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de redbull »

Am facut o reinstalare si un restore la posturi. si useri. dar asta a fost acum 2 saptamani. si problema a aparut ieri.
Avatar utilizator
dorin
Fost coleg
Mesaje: 4620
Membru din: 24-Iun-2003, 23:23:29
Versiune: 3.1.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Mediu
Nivel php: Puţin experimentat
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de dorin »

Care a fost cauza pentru care ai apelat la reinstalare ?

Ce inseamna "restore la posturi" ?

Exista legaturi intre tabelele phpbb, motiv pentru care la restaurarea bazei de date aceasta trebuie restaurata integral si nu anumite tabele da si altele nu.
redbull
Utilizator înregistrat
Mesaje: 139
Membru din: 20-Ian-2011, 13:59:46
Versiune: 3.0.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Neexperimentat
Nivel php: Mediu
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de redbull »

dorin scrie:Care a fost cauza pentru care ai apelat la reinstalare ?

Ce inseamna "restore la posturi" ?

Exista legaturi intre tabelele phpbb, motiv pentru care la restaurarea bazei de date aceasta trebuie restaurata integral si nu anumite tabele da si altele nu.

Nu pot edita: Intradevar am gresit am dat restaurarea bazei de date. a comtinutului cu posturi. useri.tema.reinstalarea si numele a bazei de date. nume user. si parola sunt aceleasi. de pe forumul vechi.
Avatar utilizator
dorin
Fost coleg
Mesaje: 4620
Membru din: 24-Iun-2003, 23:23:29
Versiune: 3.1.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Mediu
Nivel php: Puţin experimentat
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de dorin »

OK, deci ai inteles care este cauza erorii. Incearca sa restaurezi intreaga baza de date si nu anumite tabele.
redbull
Utilizator înregistrat
Mesaje: 139
Membru din: 20-Ian-2011, 13:59:46
Versiune: 3.0.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Neexperimentat
Nivel php: Mediu
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de redbull »

dorin scrie:OK, deci ai inteles care este cauza erorii. Incearca sa restaurezi intreaga baza de date si nu anumite tabele.
A restaurat toata baza de date si problema este la fel. Am mai facut pe un forum de test un backup doar la posturi. useri.pentru a testa. dar am o mica problema nu imi memoreaza statisticile. am facut backup phpbb_posts, phpbb_topics, phpbb_topics_posted, phpbb_users la ce trebuie sa mai fac backup pentru a-mi salva si toate statisticile useri+ subiecte+posturi. am gasit acest post http://www.phpbb.ro/viewtopic.php?f=46& ... er#p122842. dar nu stiu sigur care este tabelul cu setarile. poate acesta sa fie motivul?

Mentionez ca testul a fost facut pe un forum de teste..
Avatar utilizator
dorin
Fost coleg
Mesaje: 4620
Membru din: 24-Iun-2003, 23:23:29
Versiune: 3.1.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Mediu
Nivel php: Puţin experimentat
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de dorin »

Citeste acest articol.
Avatar utilizator
darkfly
Utilizator înregistrat
Mesaje: 30
Membru din: 24-Feb-2011, 21:03:26
Versiune: 3
Ext: Nu
Server: Windows
Nivel phpBB: Puţin experimentat
Nivel php: Neexperimentat
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de darkfly »

Problema este de la host, am intampinato si eu :)
Probabil detii host de la 000webhost, nu? o sa se remedieze probabil.
redbull
Utilizator înregistrat
Mesaje: 139
Membru din: 20-Ian-2011, 13:59:46
Versiune: 3.0.10
Ext: Da
Server: UNIX/Linux
Nivel phpBB: Neexperimentat
Nivel php: Mediu
Contact:

Re: SQL ERROR [ mysql4 ]

Mesaj de redbull »

darkfly scrie:Problema este de la host, am intampinato si eu :)
Probabil detii host de la 000webhost, nu? o sa se remedieze probabil.
Dupa dezinstalare si reinstalarea de 2 ori, si pierderea a multor date am ajuns si eu la aceasta concluzie.

Host-ul este 000. dupa ce am schimbat hostul acum totul este bine
Închis

Înapoi la “3.0.x Funcţionare”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 2 vizitatori