Skocz do zawartości
Spanner

IP.Board na innym porcie MySQL

Polecane posty

Spanner    4236

Patrząc na problemy z jakimi ostatnio borykają się niektórzy użytkownicy IP.Board postanowiłem napisać ten tutorialek. Mianowicie chodzi o problem z połączeniem do bazy danych na innym porcie niż standardowy. Problemy takie możemy zaobserwować np. na serwerach nazwa.pl na nowej wersji bazy MySQL 5 dostępnej na porcie 3305. Przejdźmy zatem od razu do czynów:

Otwórz plik: /conf_global.php

Znajdź:

$INFO['sql_host']			=	'serwer_bazy_danych';
dodaj poniżej:
$INFO['sql_port']			=	'port_na_jakim_dziala_baza';
Zapisz zmiany i wgraj plik. Otwórz: /sources/ipsclass.php Znajdź:
		# Debug log - Don't use this on a production board!
$this->DB->obj['debug_log'] = ROOT_PATH . 'cache/sql_debug_log_'.date('m_d_y').'.cgi';
$this->DB->obj['use_debug_log'] = 0;[/code] [i][b]Dodaj poniżej:[/b][/i]
[code] if( !empty( $this->vars['sql_port'] ) )
{
if ( extension_loaded('mysqli') AND ! defined( 'FORCE_MYSQL_ONLY' ) )
{
$this->DB->obj['sql_port'] = $this->vars['sql_port'];
}
else
{
$this->DB->obj['sql_host'] = "{$this->DB->obj['sql_host']}:{$this->vars['sql_port']}";
}
}
Zapisz zmiany i wgraj plik. Otwórz plik: /ips_kernel/class_db_mysql_client.php Znajdź:
$this->connection_id = @mysql_pconnect( $this->obj['sql_host'] ,
$this->obj['sql_user'] ,
$this->obj['sql_pass'] ,
$this->obj['force_new_connection']
);[/code] [i][b]Zamień na:[/b][/i]
[code]if( !empty($this->obj['sql_port'] ) )
{
$this->connection_id = @mysql_pconnect( $this->obj['sql_host'] .':' .$this->obj['sql_port'] ,
$this->obj['sql_user'] ,
$this->obj['sql_pass'] ,
$this->obj['force_new_connection']
);
}
else
{
$this->connection_id = @mysql_pconnect( $this->obj['sql_host'] ,
$this->obj['sql_user'] ,
$this->obj['sql_pass'] ,
$this->obj['force_new_connection']
);
}

Zapisz zmiany i wgraj plik.

To już wszystkie zmiany. Od teraz wszystko już będzie działać tak jak należy :-)

Zabrania się kopiowania i rozpowszechniania niniejszego artykułu bez zgody autora

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Spanner    4236

1. zamień nazwę z conf_global.php.dist na conf_global.php

2. wnioskuje że nie masz zainstalowanego jeszcze forum więc zrób coś takiego:

Otwórz plik ips_kernel/class_db.php:

znajdź około linii 100:

"sql_port"			 => ""		 ,

i pomiędzy znaki "" wstaw swój numer portu

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Feronso    1

i have 2.3.4 IP Board version and my hosting is shared i have checked MYSQL port from acp>sql system var> port is 3306

can i still apply this tutorial to my board ? some time when i posted then my forum give me a "connection time out" msg that actually came from SERVER side due to too many connection with database i think.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Spanner    4236

these errors are not connected with the port. If your port 3306 is default for your MySQL server you don't have to.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Chcesz dodać odpowiedź ? Zaloguj się lub zarejestruj nowe konto.

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony


  • Kto przegląda   0 użytkowników

    Brak zalogowanych użytkowników przeglądających tę stronę.

×

Ważne informacje

Kontynuując przeglądanie strony, wyrażasz zgodę na używanie przez nas plików cookies.