Nedarí sa mi rozbehať MySql databázu na websupport-e

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
elvis
Člen | 11
+
+1
-

Prosím vás, vedel by mi tu niekto poradiť čo napísať do config.neon?
Verím, že už to niekto určite riešil ako to je pri WebSupport-e.
Databázu som si zvolil, MySql 5.0, ale tak kľudne môžem dať aj inú verziu.
Problém je ten, že tam treba pristupovať cez mysqli a zadávať tam socket.

Návod tam je takýto:

V php skriptoch v prípade Improved MySQL funkcií je syntax nasledovná:

<?php
$socket = "/tmp/mysql50.sock";
$mysqli = new mysqli("localhost", $uzivatel, $heslo, $databaza, 0, $socket);
?>

V php skriptoch v prípade PDO funkcií je syntax nasledovná:

<?php
$dsn = "mysql:unix_socket=/tmp/mysql50.sock;dbname=$databaza";
try {
  $dbh = new PDO($dsn, $user, $password);
}
catch (PDOException $e) {
  echo 'Connection failed: ' . $e->getMessage();
}
?>
duke
Člen | 650
+
+1
-

A nestačí v configu nastavit položku common/parameters/database/host na „unix_socket=/tmp/mysql50.sock“? Tj.:

common:
	parameters:
		database:
			driver: mysql
			host: unix_socket=/tmp/mysql50.sock
elvis
Člen | 11
+
0
-

nepomohlo mi to.
Ja som zas skúšal

<?php
common:
	parameters:
		database:
			driver: mysql
			...
			socket: /tmp/mysql50.sock
...
...
		database:
			default:
				dsn: '%database.driver%:unix_socket=%database.socket%;dbname=%database.dbname%'
?>

ale tiez bez vysledku

Patrik Votoček
Člen | 2221
+
0
-

elvis napsal(a):

ale tiez bez vysledku

To znamená?

#
# SECURITY WARNING: it is CRITICAL that this file & directory are NOT accessible directly via a web browser!
#
# If you don't protect this directory from direct web access, anybody will be able to see your passwords.
# https://nette.org/en/security-warning
#
common:
	parameters:
		database:
			driver: mysql
			socket: /tmp/mysql50.sock
			dbname: test
			user:
			password:


	php:
		date.timezone: Europe/Prague
		# session.save_path: "%tempDir%/sessions"
		# zlib.output_compression: yes


	nette:
		session:
			expiration: '+ 14 days'

		database:
			default:
				dsn: '%database.driver%:unix_socket=%database.socket%;dbname=%database.dbname%'
				user: %database.user%
				password: %database.password%


	services:
		authenticator: Authenticator


	factories:


production < common:

development < common:
Jan Tvrdík
Nette guru | 2595
+
0
-

elvis wrote: bez vysledku

Jak takový bez výsledek vypadal?

elvis
Člen | 11
+
0
-

elvis napsal(a):

nepomohlo mi to.
Ja som zas skúšal

<?php
common:
	parameters:
		database:
			driver: mysql
			...
			socket: /tmp/mysql50.sock
...
...
		database:
			default:
				dsn: '%database.driver%:unix_socket=%database.socket%;dbname=%database.dbname%'
?>

ale tiez bez vysledku

Nooo nakoniec toto riešenie bolo správne, teraz to už ide ako má. S nette začínam, zabudol som zmazať cache pri prechode na ostrý web. Ďakujem za snahu pomôcť :)