32

端末で mysql クライアントを実行しようとしています。最新のmysql gemをインストールしました。

 ➜  ~ git:(master) ✗ ruby -v
    ruby 1.8.7 (2010-01-10 patchlevel 249) [universal-darwin11.0]
    ➜  ~ git:(master) ✗ rails -v
    Rails 2.3.14
    ➜  ~ git:(master) ✗ which mysql
    mysql: aliased to nocorrect mysql
    ➜  ~ git:(master) ✗ which ruby
    /usr/bin/ruby
    ➜  ~ git:(master) ✗ which rails
    /usr/bin/rails
    ➜  ~ git:(master) ✗ gem list

*** LOCAL GEMS ***

actionmailer (2.3.14)
actionpack (2.3.14)
activerecord (2.3.14)
activeresource (2.3.14)
activesupport (2.3.14)
builder (2.1.2)
bundler (1.0.21)
capistrano (2.9.0)
capybara (0.3.9)
cgi_multipart_eof_fix (2.5.0)
childprocess (0.2.2)
columnize (0.3.4, 0.3.3)
cucumber (0.9.4)
cucumber-rails (0.3.2)
culerity (0.2.15)
daemons (1.1.4)
database_cleaner (0.6.7)
diff-lcs (1.1.3)
expertiza-authlogic (2.1.6.1)
fastercsv (1.5.4)
fastthread (1.0.7)
ffi (1.0.10, 1.0.9)
gdata (1.1.2)
gem_plugin (0.2.3)
gherkin (2.2.9)
highline (1.6.2)
hoptoad_notifier (2.4.11)
json (1.4.6)
json_pure (1.6.1)
linecache (0.46)
mime-types (1.16)
mongrel (1.1.5)
mysql (2.8.1)
mysql2 (0.3.7)
net-scp (1.0.4)
net-sftp (2.0.5)
net-ssh (2.2.1)
net-ssh-gateway (1.1.0)
nokogiri (1.5.0)
rack (1.1.2)
rack-test (0.6.1)
rails (2.3.14)
rake (0.9.2)
rbx-require-relative (0.0.5)
rdoc (3.11)
RedCloth (4.2.8)
rgl (0.4.0)
ruby-debug (0.10.4)
ruby-debug-base (0.10.4)
rubyzip (0.9.4)
selenium-webdriver (2.8.0, 2.7.0)
stream (0.5)
term-ansicolor (1.0.7, 1.0.6)

➜  expertiza git:(master) ✗ sudo su
Password:
sh-3.2# mysql -u root -p
Enter password: 
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)
sh-3.2# 

上記のエラーを取り除くことができません。で作成しmysql.sock fileました/Users/HPV/expertiza/tmp/sockets。私が書いたファイルにmysql.default_socket =/expertiza/tmp/sockets/mysql.sock.

私は何を間違っていますか?

ありがとう!

4

7 に答える 7

38

サーバーをインストールして起動するには、指示に従う必要があります。

コマンドは、MySQLのインストール方法によって異なります。最初にこれを試してください:

sudo / Library / StartupItems / MySQLCOM / MySQLCOM start

それが失敗した場合:

cd / usr / local / mysql
sudo ./bin/mysqld_safe
(必要に応じてパスワードを入力してください)
(Control-Zを押します)
bg

于 2011-10-21T00:33:40.620 に答える
32

また、このエラーが発生し、Homebrew 経由で mysql をインストールした場合、これが機能することがわかりました (ただし、「5.6.12」を独自のバージョンに変更する必要があります)。

/usr/local/Cellar/mysql/5.6.12/bin/mysql.server 再起動

MySQLが動作しているときはいつでもこれを使用できるように、ホームディレクトリにファイル〜/restartMysql.shを作成しました(上記の行のみを含む)

于 2014-02-03T23:10:32.377 に答える
17

コマンド ラインで次のコマンドを実行します。

$ mysql.server start
于 2015-11-17T05:52:20.867 に答える
5

この投稿は私のためにそれを助けました。ここで手順を書き直します(注:コマンドの出力も書きます..あなたが順調に進んでいることがわかるように)

実行している場合は、最初にサーバーを停止します。

[root@servert1 ~]# /etc/init.d/mysqld stop
Stopping MySQL: [ OK ]

別のスレッドでSQLデーモンを実行する

[root@servert1 ~]# mysqld_safe --skip-grant-tables &    
[1] 13694    
[root@servert1 ~]# Starting mysqld daemon with databases from /var/lib/mysql

別のシェル ウィンドウを開き、次のように入力します。

[root@servert1 ~]# mysql -u root

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 1

Server version: 5.0.77 Source distribution



Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysqlを使い始める

mysql> use mysql; 

Reading table information for completion of table and column names

You can turn off this feature to get a quicker startup with -A



Database changed

新しいパスワードを使用してテーブルを手動で更新しuserます (注:現在の状況mysql> show tables; を把握するためだけに入力してください)。

注: MySQL 5.7 以降のパスワードはauthenication_string表にあるため、コマンドはupdate user set authentication_string=password('testpass') where user='root';

mysql> update user set password=PASSWORD("testpass") where User='root';

Query OK, 3 rows affected (0.05 sec)

Rows matched: 3 Changed: 3 Warnings: 0

特権をフラッシュします(この特権が何であるかはわかりません..しかし、機能します)

mysql> flush privileges; 

Query OK, 0 rows affected (0.04 sec)

終了する

mysql> quit

Bye

サーバーを停止する

注: OS X または macOS ではmysql.server/usr/local/mysql/support-files/.

mysql.server stop

Shutting down MySQL
.130421 09:27:02 mysqld_safe mysqld from pid file /usr/local/var/mysql/mycomputername.local.pid ended
 SUCCESS! 
[2]-  Done                    mysqld_safe --skip-grant-tables

デーモンが実行されている他のシェル ウィンドウを強制終了します (念のため)。

これで準備完了です。それを試してみてください:

[root@servert1 ~]#  mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.6.10 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

終わり!

于 2013-04-21T06:54:50.260 に答える
1

これが誰かに役立つことを願っています。同じエラーが発生していましたが、他の人とはまったく異なる理由のようです。

CentOS マシンが 2 台あります。

古いマシンを MySQL 5.6 にアップグレードし、新しいマシンに 5.5 がインストールされていることに気づかずに、my.cnf を新しいマシンにコピーしました。5.6 のみのディレクティブをコメントアウトすると、MySQL は期待どおりに起動しました。(そして今、私はアップグレードを実行しているので、非常に便利なディレクティブを適用できinnodb_buffer_pool_dump_at_shutdownますinnodb_buffer_pool_load_at_startup

最低限の my.cnf を試すことをお勧めします。MySQL が起動したら、問題の原因が見つかりました。

于 2015-06-08T03:09:31.543 に答える
0

MySQLサーバーをインストールする必要があるか、mysqlのサイトにインストールパッケージがあるか、macportsを介してインストールできるようです(darwin11行から想定しています)。ポート経由でインストールしましたが、ソケットは/ opt / local / var / run /mysql5/にあります。

于 2011-10-21T00:35:04.017 に答える
0

私の場合、tmp フォルダーの設定が正しくありません。私がこれらのステップで終わるもの:

1. cd /

2. ln -s private/tmp /tmp
于 2017-06-27T13:25:56.113 に答える