[MySQL] Veranderen locatie van my.cnf

Pagina: 1
Acties:
  • 108 views sinds 30-01-2008
  • Reageer

  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 15-01 10:55
Ik wil op 1 machine 2 mysql databases draaien.
Allemaal niet zo'n probleem, maar de configuratie wel.

Ik wil een aparte configuratie voor beide machines. Daarvoor wil ik de my.cnf file gebruiken, alleen mysql zoekt niet naar die file in bijvoorbeeld de data directory van de database.

Ik heb wat gezocht, en vond de optie --defaults-file=/iets.cnf maar deze werkt niet meer. Op de MySQL site gaf iemand dat ook aan, alleen kwam daarop geen reply meer.

Weet iemand toenvallig een mogelijkheid?

Hier nog wat command line options, maar niet de juiste: http://mysqld.active-venture.com/Command-line_options.html

edit:
Dit is vreemd:
On Unix, MySQL reads default options from the following files:

Filename Purpose
/etc/my.cnf Global options
DATADIR/my.cnf Server-specific options
defaults-extra-file The file specified with --defaults-extra-file=path
~/.my.cnf User-specific options

vond ik op internet.
Die ene bestandsoptie wil ik wel proberen, maar die datadir mogelijkheid heb ik al geprobeerd en werkt niet?

Overigens: De mysql, 4.0.20, is zelf gecompileerd, mocht dat nog uitmaken?

edit:
O ja, ik gebruik het standaard start script, mysql.server , waar ik een dubbele van heb gemaakt voor de 2e server, waarin ik de datadir etc heb gewijzigd.
Ook bij de my.cnf file waar dit script wat waardes uit haalt heb ik er de juiste directory opgegeven.

edit2:
Ik heb in de startlijn van mysql in dat script nu ook de optie --default-extra-file geprobeerd, weer zonder succes.
In de logs vind ik dat mysql wil starten op dezelfde poort als de huidige, waardoor beide SQL's stoppen met werken :( . Overigens heb ik wel de pid file verwijderd uit de nieuwe, zodat dat niet een probleem kan geven.
Schijnbaar leeft die 2e mysql steeds niet de my.cnf file in de data directory, waarin het nieuwe database path, poortnummer en socket staan.

[ Voor 56% gewijzigd door pierre-oord op 27-10-2004 22:22 ]

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Bij mij werkt de --defaults-file optie gewoon hoor :)

Ik draai ongeveer dezelfde config als jij wilt denk ik - MySQL 4.0.21 in 2 instances op FreeBSD, een standaard FreeBSD script met de belangrijkste regel:

code:
1
2
3
                        /usr/local/bin/mysqld_safe --defaults-file=/usr/local/et
c/mysql/my-standard.cnf --user=mysql --datadir=${DB_DIR} --pid-file=${PIDFILE} >
 /dev/null &


en een:

code:
1
2
3
/usr/local/bin/mysqld_safe --defaults-file=/usr/local/et
c/mysql/my_lift.cnf --user=mysql_lift --datadir=${DB_DIR} --pid-file=${PIDFILE}
> /dev/null &

  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 15-01 10:55
Ik krijg de volgende melding terug van mysql in de log:

041027 22:05:24 mysqld started
/usr/local/mysql/4.0.20/libexec/mysqld: ERROR: unknown variable 'defaults-file=/www/mysql2/data/my.cnf'
041027 22:05:24 mysqld ended.

041027 22:20:45 mysqld started
/usr/local/mysql/4.0.20/libexec/mysqld: ERROR: unknown variable 'defaults-extra-file=/www/mysql2/data/my.cnf'
041027 22:20:45 mysqld ended.

Het eindigen van mysql komt mogelijk ook door die dubbele poort, dat weet ik niet zeker.
Elevator, weet je zeker dat jouw config laad, en niet gewoon de defaults gebruikt? (Check anders ook even je %hostname%.err logfile, standaard te vinden in de data directory met de database).

Alsnog: Dan zou he tniet moeten werken bij jouw.
Eventueel upgrade ik mijn mysql wel later.
Gebruik jij een binary distrubutie of heb je hem zelf gecompileerd, zoals mij? (Tegenwoordig gebruik ik overigens binary, maar dit is een wat oudere installatie alweer :) )

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

Ik weet zeker dat het werkt ja - er draaien een aantal databases op beide mysql instances waarvan ik vrij snel door heb dat ze down zouden zijn ;)

Het is een via de ports geinstalleerde mysql (source distributie dus) die tot een maand geleden nog 4.0.20 draaide waarmee deze setup ook werkte :)

  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 15-01 10:55
Wat vreemt? Ik begrijp hier niets van, m'n start regel is hetzelfde als die van jouw?

Ik draai mysql wel onder dezelfde user. Kan dat problemen geven?
Zijn er nog anderen die een dubbele database draaien? DIt is echt vreemd.


BUG gevonden (?):

Alleen als ik in het script op de command line aan het BEGIN die defaults-file optie meegeef werkt het, na het PID argument niet meer!

[ Voor 29% gewijzigd door pierre-oord op 28-10-2004 08:50 ]

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)


  • CyBeR
  • Registratie: September 2001
  • Niet online

CyBeR

💩

pierre-oord schreef op 28 oktober 2004 @ 08:41:
Wat vreemt? Ik begrijp hier niets van, m'n start regel is hetzelfde als die van jouw?

Ik draai mysql wel onder dezelfde user. Kan dat problemen geven?
Zijn er nog anderen die een dubbele database draaien? DIt is echt vreemd.


BUG gevonden (?):

Alleen als ik in het script op de command line aan het BEGIN die defaults-file optie meegeef werkt het, na het PID argument niet meer!
vreemd, jouw

Probeer eens --defaults-extra-file?

All my posts are provided as-is. They come with NO WARRANTY at all.


  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 15-01 10:55
dat met extra werkt ook niet, maar ik heb nu een nieuw probleem: De database is PRECIES hetzelfde als de oude, en als ik iets verwijder, gebeurd dat ook in de oude :(
Toch heb ik zeker een andere data directory opgegeven!
In de my.cnf staan nog innodb opties overigens, die commented zijn, en die je moet uncommenten als je innodb gebruikt. Dat gebruik ik echter al sinds een eeuwigheid, waarom zijn die opties dan?


edit:
Als ik via phpmyadmin kijk op die nieuwe database staat de datadir idd verkeerd. Ik heb hem én in de my.cnf staan, en in de command line start als argument. Ik begrijp hier dus echt helemaal niets van ?

edit2:
Hé?
Het lijkt erop dat phpmyadmin niet op de port connect die ik in de configuratie opgeef, maar op de default! ALs ik de default server uitzet, kan phpmyadmin ook niet meer connecten :S

Waarom werkt de port variabele niet? Hij wordt overigens wel bovenaan in phpmyadmin weergegeven!

OK, die laatste problemen waren dus phpmyadmin problemen.
Als ik met een socket een connectie maak werkt het namelijk wel goed.
Waarom wordt de MYSQL port niet juist gebruikt zoals het hoort?

[ Voor 51% gewijzigd door pierre-oord op 28-10-2004 22:21 ]

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)


  • elevator
  • Registratie: December 2001
  • Niet online

elevator

Officieel moto fan :)

pierre-oord schreef op 28 oktober 2004 @ 21:16:
Het lijkt erop dat phpmyadmin niet op de port connect die ik in de configuratie opgeef, maar op de default! ALs ik de default server uitzet, kan phpmyadmin ook niet meer connecten

Waarom werkt de port variabele niet? Hij wordt overigens wel bovenaan in phpmyadmin weergegeven!
Even een late reactie - maar volgens mij heeft dit met de mysql client library te maken. Als je jouw 'hostname' in de config verandert van 'localhost' naar '127.0.0.1' zal hij de port gewoon goed accepteren :)

  • pierre-oord
  • Registratie: April 2002
  • Laatst online: 15-01 10:55
Daar kwam ik idd achter met een paar websites, ik las dat localhost ongeacht een portnummer naar de standaard poort wordt vertaalt.

Ik zal het later nog eens proberen, en ga ervanuit dat het gewoon werkt, immers is phpmyadmin niets meer dan een php script met wat database functies.

Ondernemer in tech (oud LOQED.com, nu UpToMore.com)


  • sebas
  • Registratie: April 2000
  • Laatst online: 16-12-2025
Ik neem aan dat dat alleen geldt als je op localhost via een UNIX socket verbindt, i.p.v. TCP/IP te gebruiken.

Everyone complains of his memory, no one of his judgement.

Pagina: 1