# [SOLVED][MYSQL]Brak zdalnego dostępu do mysql

## Eeeyeore

Postawiłem sobie serwerek, i cholera jasna zapomnialem jak konfiguruje sie mysql-a, coby miec dostep z zewnatrz.

Najmadrezszy wujek gugel podpowiada tylko wyhaszowanie opcji :

skip-networking

bind-adress

Ale to jest gucio prawda nie mozna sie podlaczyc zabaweczka MySQL Administrator

Moze cos przeoczylem w konfiguracji - na razie na surowo, pozniej sobie bufory i inne pierdoly poustawiam.

Moze ktos rzuci okiem w moj config i wypatrzy co spitolilem, ew czygo brakuje

```

cat /etc/mysql/my.cnf

# /etc/mysql/my.cnf: The global mysql configuration file.

# $Header: /var/cvsroot/gentoo-x86/dev-db/mysql/files/my.cnf-4.1,v 1.3 2006/05/05 19:51:40 chtekk Exp $

# The following options will be passed to all MySQL clients

[client]

#password                                       = your_password

port                                            = 3306

socket                                          = /var/run/mysqld/mysqld.sock

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[php-cgi]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[mysql]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[mysqladmin]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[mysqlcheck]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[mysqldump]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[mysqlimport]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[mysqlshow]

character-sets-dir=/usr/share/mysql/charsets

default-character-set=latin1

[myisamchk]

character-sets-dir=/usr/share/mysql/charsets

[myisampack]

character-sets-dir=/usr/share/mysql/charsets

# use [safe_mysqld] with mysql-3

[mysqld_safe]

err-log                                         = /var/log/mysql/mysql.err

# add a section [mysqld-4.1] or [mysqld-5.0] for specific configurations

[mysqld]

character-set-server            = latin1

default-character-set           = latin1

user                                            = mysql

port                                            = 3306

socket                                          = /var/run/mysqld/mysqld.sock

pid-file                                        = /var/run/mysqld/mysqld.pid

log-error                                       = /var/log/mysql/mysqld.err

basedir                                         = /usr

datadir                                         = /var/lib/mysql

skip-locking

key_buffer                                      = 16M

max_allowed_packet                      = 1M

table_cache                             = 64

sort_buffer_size                        = 512K

net_buffer_length                       = 8K

read_buffer_size                        = 256K

read_rnd_buffer_size            = 512K

myisam_sort_buffer_size         = 8M

language                                        = /usr/share/mysql/english

# security:

# using "localhost" in connects uses sockets by default

#skip-networking

#bind-address                           = 127.0.0.1

log-bin

server-id                                       = 1

# point the following paths to different dedicated disks

tmpdir                                          = /tmp/

#log-update                             = /path-to-dedicated-directory/hostname

# you need the debug USE flag enabled to use the following directives,

# if needed, uncomment them, start the server and issue

# #tail -f /tmp/mysqld.sql /tmp/mysqld.trace

# this will show you *exactly* what's happening in your server ;)

#log                                            = /tmp/mysqld.sql

#gdb

#debug                                          = d:t:i:o,/tmp/mysqld.trace

#one-thread

# uncomment the following directives if you are using BDB tables

#bdb_cache_size                         = 4M

#bdb_max_lock                           = 10000

# the following is the InnoDB configuration

# if you wish to disable innodb instead

# uncomment just the next line

skip-innodb

#

# the rest of the innodb config follows:

# don't eat too much memory, we're trying to be safe on 64Mb boxes

# you might want to bump this up a bit on boxes with more RAM

innodb_buffer_pool_size = 16M

# this is the default, increase it if you have lots of tables

innodb_additional_mem_pool_size = 2M

#

# i'd like to use /var/lib/mysql/innodb, but that is seen as a database :-(

# and upstream wants things to be under /var/lib/mysql/, so that's the route

# we have to take for the moment

#innodb_data_home_dir           = /var/lib/mysql/

#innodb_log_arch_dir            = /var/lib/mysql/

#innodb_log_group_home_dir      = /var/lib/mysql/

# you may wish to change this size to be more suitable for your system

# the max is there to avoid run-away growth on your machine

innodb_data_file_path = ibdata1:10M:autoextend:max:128M

# we keep this at around 25% of of innodb_buffer_pool_size

# sensible values range from 1MB to (1/innodb_log_files_in_group*innodb_buffer_pool_size)

innodb_log_file_size = 5M

# this is the default, increase it if you have very large transactions going on

innodb_log_buffer_size = 8M

# this is the default and won't hurt you

# you shouldn't need to tweak it

set-variable = innodb_log_files_in_group=2

# see the innodb config docs, the other options are not always safe

innodb_flush_log_at_trx_commit = 1

innodb_lock_wait_timeout = 50

[mysqldump]

quick

max_allowed_packet                      = 16M

[mysql]

# uncomment the next directive if you are not familiar with SQL

#safe-updates

[isamchk]

key_buffer                                      = 20M

sort_buffer_size                        = 20M

read_buffer                             = 2M

write_buffer                            = 2M

[myisamchk]

key_buffer                                      = 20M

sort_buffer_size                        = 20M

read_buffer                             = 2M

write_buffer                            = 2M

[mysqlhotcopy]

interactive-timeout

```

Tylko tu jest ciekawa konfiguracja, ze w configu jest jeszcze jeden pliczek: mysqlaccess.conf

Wiec moze tu gdzies trzeba dopisac roota.

Normalnie graby juz mi odpadaja co z tym zrobic:

Zawartosc:

```

# ----------------#

# Global settings #

# --------------- #

  #$Param{'host'}     = '';

  $Param{'user'}     = 'nobody';

  $Param{'db'}       = 'test';

  $Param{'password'} = 'foobar';

  $Param{'debug'}    = 0;

# --------------------------#

# Settings for Command-line #

# ------------------------- #

if ($CMD) {

  $Param{'superuser'} = 'root';

  $Param{'rhost'}     = 'localhost';

  $Param{'spassword'} = '';

  $Param{'brief'}     = 1;

}

# ---------------------#

# Settings for CGI-BIN #

# -------------------- #

if ($CGI) {

  $Param{'superuser'}  = 'root';

  $Param{'rhost'}      = 'localhost';

  $Param{'spassword'}  = '';

  $Param{'table'}      = 1;

}

1;  #to make require happy

```

doadam że czytałem ,ale nie zakumalem bo cos tete pomysly nie dzialaja root i userzy do databaz maja swoje hasla http://dev.mysql.com/doc/refman/5.0/en/default-privileges.html

pzdr.   :Question: 

----------

## lsdudi

1. Server nasłuchuje na odpowiednim interface?

 podpowiem netstat (lokalnie), nmap (zdalnie)

2. A mieć towarzyszu odpowiednie loginy ?

i podczas zakładania "grant [costam ] to user" nie było @localhost?

----------

## psycepa

a to: http://www.gentoo.org/doc/pl/mysql-howto.xml czytales?

mozesz sie zalogowac z localhosta? 

jesli nie to co wypluwa konsola?

jesli probojesz sie zalogowac z innego kompa, co wypluwa  konsola?

nei pamietam juz ale te pliki powinny byc, jesli so to czy host.allow i host.deny so dobrze ustawione?

----------

## Eeeyeore

 *lsdudi wrote:*   

> 1. Server nasłuchuje na odpowiednim interface?
> 
>  podpowiem netstat (lokalnie), nmap (zdalnie)

 

Da Tawariszcz Wissarionowicz  :Smile: 

MySQL słuchajet na porcie jak wół :

```

ns2553 ~ # nmap maja.russkaja.domena |grep mysql

3306/tcp  open  mysql

```

localhost toze i zdalnie toze sluchajet  :Smile: 

pluje sie że zły login i passło tyle że

 *lsdudi wrote:*   

> 2. A mieć towarzyszu odpowiednie loginy ?
> 
> i podczas zakładania "grant [costam ] to user" nie było @localhost?

 

Loginy miec cacy u:root p:stalin666evil  :Smile: 

I nie wchodzi

Na userze tez nie :

u:zniewolony p:katyń 

Tez nie wchodzi.

więc coś jest nie teges w tym mysqlaccess.conf

Więc to nie to....

 *psycepa wrote:*   

> a to: http://www.gentoo.org/doc/pl/mysql-howto.xml czytales?
> 
> mozesz sie zalogowac z localhosta? 
> 
> jesli nie to co wypluwa konsola?
> ...

 

Nadworny przyczepiacu z lizakiem przy mordce  :Smile:  howto znam na pamiec  :Smile: 

zdalnie na przyklad sqlem w konsoli się pracuje czy tam phpmyadminem sie dziala. Rzecz w tym że to nie jest localhost tylko skrzynka w krainie gdzie produkuja i pija szampana. A potrzebuje zdalnie mysl administrator czy browser, poniewaz sa one wieleokrotnie szybsze i wygodniejsze niz dupny phpmyadmin, czy jakies juz fatalne narzedzia do obslugi forum.

Cos jest spitolone w tych plikach konfiguracyjnych co dawalem. Jestem pewienze kazda osoba co pracuje zdalnie i obsluguje serwy to wychwuci bez mydelka. No ja za chiny nie widze, a akurat goscie u ktorych moglbym porownac pojechali na wakacje.

host.allow i deny nie maja nic wspolnego z dostepem do mysql - tak mi sie wydaje na jakies 90%, bo to do czegos innego sluzy - ale moge sie mylic..

Posune sie do brutalnego przekupstwa i lapowkarstwa.  :Smile: 

Jak mi ktos pomoze w rozwiazaniu tego wezla gordyjskiego, to ja dam bardzo ladny zoptymalizowany konfig dla mysql coby taaakie duze *.sql smiagaly cacy takie takie *.sql 700MB na w miare srednim sprzecie.

Wieck jak ktos chce lapowke to prosze pomoc.

Z gory dziekuje i serdecznie pozdrawiam  :Smile: 

----------

## no4b

 *Quote:*   

> Loginy miec cacy u:root p:stalin666evil  
> 
> I nie wchodzi 
> 
> Na userze tez nie : 
> ...

 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'ip-komputera-z-ktorego-chcesz-sie-laczyc' IDENTIFIED BY 'jakiesniezwykletrunehaslo' WITH GRANT OPTION;

FLUSH PRIVILEGES;

----------

## lsdudi

[quote="Eeeyeore"] *lsdudi wrote:*   

> 
> 
> host.allow i deny nie maja nic wspolnego z dostepem do mysql - tak mi sie wydaje na jakies 90%, bo to do czegos innego sluzy - ale moge sie mylic..
> 
> 

 

jak dla mnie mają  :Smile: 

spróbuj sie jeszcze zatelnetować. Jak nadal ten sam problem to być może wina narzędzia.

----------

## Eeeyeore

@NO/Laaaaaama - jesteś moim bogiem - pomogło - tak to było to, z drobną modyfikacją, oraz bindowanie na zewnetrzne ip (czego nikt nie wychwycił).

Big brooowar.

host.allow i deny mają zero wspólnego z dostepem do mysql - a jesli ktos rozpowszechnia takie bajki to niech sobie obejrzy misia uszatka...

 :Twisted Evil: 

pozdrawiam

----------

## psycepa

to chyba oczywiste ze z dostepem do mysql maja malo wspolnego, ale z dostepem do maszyny maja za to wiele

a waść nie podales komunikatow ktore dostajesz i takich tam... wiec sie nie dziw  :Twisted Evil: 

----------

## Eeeyeore

 *psycepa wrote:*   

> to chyba oczywiste ze z dostepem do mysql maja malo wspolnego, ale z dostepem do maszyny maja za to wiele
> 
> a waść nie podales komunikatow ktore dostajesz i takich tam... wiec sie nie dziw 

 

No przeciez napisalem ze dostep do maszyny mam, bo w sumie sam ja stawialem, jakbym nie mial to jakbym konfigurowal? a to ze uzywam skrotow myslowych zrozumialych dla wszystkich wiec o co co ci codzi czyzby o tego "lizaka przy pyszczku" ?

Blokowane było przez domyslna konfiguracje mysql. I dodatek jakby komus nie szlo to trzeba sprawdzic:

W bazie 'mysql' warto zmienić user w bazie -> wskazać jako Hosta : '%'  albo konkretne ip.

No i bedzie działac.

yle że tak idostęp trzeba zabezpieczyc i otwierac sobie kiedy trzeba

Pozdrawiam

----------

