2017-11-15 7 views
0

Der Server, den ich benutze, ist eine SSH-Verbindung, die von CentOS ausgeführt wird, verwendet LAMP als Plattform.Was ist die mögliche Einstellung für die Anbindung von Codeigniter an einen SSH-Server mit CentOS und Mariadb als Datenbankmanagement?

Da es sich um CentOS handelt, ist Mariadb das einzige verfügbare Datenbankmanagement dafür. Ich kann mysql nicht über sudo yum install mysql-server Befehl installieren.

Ich habe ein Projekt mit codeigniter in meinem lokalen erstellt.

Ich habe Probleme beim Verbinden mit der Datenbank. Der Fehler gibt wie:

A PHP Error was encountered 

Severity: Warning 

Message: mysqli::real_connect(): (HY000/2002): A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. 

Filename: mysqli/mysqli_driver.php 

Die db Einstellung in meinem codeigniter ist:

$active_group = 'default'; 
$query_builder = TRUE; 

$db['default'] = array(
    'dsn' => '', 
    'hostname' => '*server-ip-address*', 
    'port' => '*server-port-number*', 
    'username' => 'root', 
    'password' => '[email protected]', 
    'database' => 'listingapp_db', 
    'dbdriver' => 'mysqli', 
    'dbprefix' => '', 
    'pconnect' => FALSE, 
    'db_debug' => (ENVIRONMENT !== 'production'), 
    'cache_on' => FALSE, 
    'cachedir' => '', 
    'char_set' => 'utf8', 
    'dbcollat' => 'utf8_general_ci', 
    'swap_pre' => '', 
    'encrypt' => FALSE, 
    'compress' => FALSE, 
    'stricton' => FALSE, 
    'failover' => array(), 
    'save_queries' => TRUE 
); 

Ich dachte nur, dass vielleicht ist meine Datenbank falsch eingestellt.

Hat es etwas mit der dbdriver Einstellung zu tun? Ich habe versucht, mysqli zu mariadb, noch keinen Fortschritt zu ändern.

Was könnte möglicherweise die gültige Einstellung sein, die Co-Inside mit dem Server CentOS, Mariadb könnte?

Ich habe versucht, sudo iptables -vnL Firewall zu überprüfen und das ist das Ergebnis:

Chain INPUT (policy DROP 10924 packets, 630K bytes) 
pkts bytes target  prot opt in  out  source    destination 
40905 5353K ACCEPT  tcp -- *  *  0.0.0.0/0   0.0.0.0/0   tcp dpt:80 
1860K 2702M ACCEPT  all -- *  *  0.0.0.0/0   0.0.0.0/0   state RELATED,ESTABLISHED 
    0  0 DROP  tcp -- *  *  0.0.0.0/0   0.0.0.0/0   tcp flags:0x3F/0x00 
    4 172 DROP  tcp -- *  *  0.0.0.0/0   0.0.0.0/0   tcp flags:!0x17/0x02 state NEW 
    0  0 DROP  tcp -- *  *  0.0.0.0/0   0.0.0.0/0   tcp flags:0x3F/0x3F 
    158 9480 ACCEPT  all -- lo  *  0.0.0.0/0   0.0.0.0/0 
    445 28059 ACCEPT  icmp -- *  *  0.0.0.0/0   0.0.0.0/0 
    57 2800 ACCEPT  tcp -- *  *  0.0.0.0/0   0.0.0.0/0   tcp dpt:2202 

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) 
pkts bytes target  prot opt in  out  source    destination 

Chain OUTPUT (policy ACCEPT 1133K packets, 103M bytes) 
pkts bytes target  prot opt in  out  source    destination 
+1

Sie können Mariadb mit mysqli in Codeigniter verbinden, kein Problem. Es kann sein, dass die Centos-Firewall den Port blockiert. – ourmandave

+0

@ourmandave ah, ich verstehe. aber wie kann ich einen Port entsperren? Was ist ein Beispielbefehl? –

+0

Hängt davon ab, welche Version von Centos Sie verwenden und ob Sie Firewall oder iptables verwenden. Du solltest das wahrscheinlich googlen. – ourmandave

Antwort

0

ich jetzt mein Problem behoben haben. Es geht darum, den Port zu öffnen, den ich benutzt habe, um dann dem root-Benutzer in mysql Berechtigungen zu erteilen.

Verwandte Themen