2016-09-21 51 views
0

我正在運行scotch box vagrant box。用mysql工作臺備份Vagrant Mysql

我正在使用Mysql Workbench來連接它。

連接到數據庫不是一個問題,使用「標準TCP/IP通過SSH

enter image description here

不過,我想使用MySQL工作臺,‘導出數據’功能,備份數據庫。

  • 單擊「導出數據」

  • 檢查框旁邊的架構我想備份

  • 點擊 「開始導出」

但它總是返回錯誤:

05:26:20 Dumping databasename (tablename) 
Running: /Applications/MySQLWorkbench.app/Contents/MacOS/mysqldump 
--defaults-file="/var/folders/x1/h3dh_9hn4xz75qmz1tyjg7980000gn/T/tmpBMusBi/extraparams.cnf 
" --user=root --host=localhost --protocol=tcp --port=21651 
--default-character-set=utf8 --skip-triggers "database name" "table name" 

mysqldump: Got error: 2003: Can't connect to MySQL server 
on 'localhost' (61) when trying to connect 

我怎樣才能將數據導出到正常工作?

+0

你實際上可以用WB連接到該服務器?如果從WB連接工作,那麼它應該也從mysqldump工作。 –

+0

是的,連接,更新行,添加模式和表,這些都不是問題,它只是在使用「導出數據」功能時遇到問題, –

回答

0

我不知道這是否是最優雅的修復,但它的工作原理

更新流浪漢文件

config.vm.network "forwarded_port", guest: 3306, host: 3306 

增加供應

config.vm.provision "shell", inline: <<-SHELL 

sudo sed -i 's/bind-address.*/bind-address = 0.0.0.0/' /etc/mysql/my.cnf 

sudo service mysql restart 

SHELL 

運行:

vagrant provision 

連接到數據基地

添加新用戶

User: root 
From host: % 

確保新用戶的全部權限

當您使用此連接來連接到數據庫中創建具有以下設置

connection method: standard (tcp/ip) 
hostname: 192.168.33.10 
username: root 

一個新的數據庫連接, 「導出數據」功能將正常工作。