.My.cnf ayarlarım neden çalışmıyor?


15

Masaüstümdeki giriş dizinimde aşağıdakileri içeren bir .my.cnf dosyası var:

[dbid]
user = myusername
password = mypassword
database = dbname
host = server.location.com

Doğru hatırlıyorsam, Ubuntu 10.04'ten 11.04'e yükseltmeden önce, komutu kullanabildim

mysql dbid

Doğrudan veritabanına bağlanmak için

Ama bugün bu hatayı alıyorum:

ERROR 1049 (42000): Unknown database 'dbname'

Yanlış bir şey mi yaptım?


Güncellemeye eklediğim yanıta dayanarak bunu 'gerçek bir soru değil' olarak işaretledim. Sorun, veritabanı ile ilgili olmak yerine ip adresinde yapılan değişikliklerle ilgiliydi. Kapatılması gerekip gerekmediğinden veya yanıtı güncelleştirme olarak sağlamamdan emin değilim.
David LeBauer

Genellikle "#" ile kullanılmaması gereken hesapları yorumlamak yeterlidir.

Ne demek istediğini anlamıyorum - bu soruya nasıl cevap veriyor?
David LeBauer

Yanıtlar:


23

Önceki .my.cnf'nizin nasıl çalıştığından emin değilim ve aslında bu dosyaları daha önce hiç kullanmadım (esas olarak onlar hakkında bilmiyordum). Biraz araştırmadan sonra, bu bağlantıyı buldum ve benim için çalışan ~ / .my.cnf'yi buldum:

[clientdbid]
password = mypass
database = dbname
host = server.location.com

ve onu okuyan komut:

mysql --defaults-group-suffix=dbid

Dikkat çekilmesi gereken birkaç nokta (bağlantılı makaleden öne çıkan özellikler):

  • gruptan önce mysql tarafından okunmak için 'istemci' olmalıdır
  • herhangi bir [istemci] gruptan sonra gitmek zorundadır, aksi takdirde geçersiz kılınır

Bunu Mac'te mysql 5.5'te test ettim, harika çalıştı. Ve şimdi onları tanıdığım için onları kullanacağım!

GÜNCELLEME Bunu ayarladıktan sonra, komut satırının mysql --defaults-group-suffix=dbidbiraz iri olduğunu fark ettim . Ekstra bonus olarak, Linux / Mac / Etc çalıştırdığınız varsayılarak şunu yapın:

echo 'alias mysql_dbid="mysql --defaults-group-suffix=dbid"' >> ~/.profile

Son dbidek grubunuzun adı nerede .


Hey @Dest, Cevabınızdaki İyi Şeyler !!! +1 (MySql rozetinizde BTW Tebrikler)
RolandoMySQLDBA

Bunu onaylayacaktım, sonra Wow Dejavu dedim. Bu birkaç ay öncesindeydi.
RolandoMySQLDBA

0

Veritabanı yöneticim sorunu çözmeme yardımcı oldu ve işte bu soruyu soran orijinal sorunun çözümü:

Sorun (anladığım kadarıyla), veritabanının yalnızca belirli IP adreslerine dayalı bilgisayarlara erişime izin vermesiydi. Yeni bir bilgisayar aldığımda IP adresim değişmişti ve farklı IP adresleriyle ayarlanmış hesaplar için veritabanı yöneticimin sözleriyle farklı şifrelerim vardı.

User@olddesktopip.edu, user@newdesktopip.edu ve IP adresinize göre sizin için birkaç farklı kullanıcı adım vardı. Parolalar, karışıklığa neden olan hepsi için aynı değildi, bu benim hatamdı.


0

Derek Downey'nin güncellemesinin bir güncellemesi olarak, ana bilgisayar adına göre uygun bölümü otomatik olarak seçerek, farklı Linux bilgisayarlarda ortak bir ~ / .my.cnf dosyasını şu şekilde kullanıyorum:

echo 'alias mysql="mysql --defaults-group-suffix=$HOST"' >> ~/.bash_aliases

Bundan sonra, komut satırına yazmam gereken tek şey mysql.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.