在Raspberry上运行Google Cloud SQL Proxy

时间:2017-11-13 14:50:20

标签: json raspberry-pi google-cloud-sql

我在尝试将运行ubuntu配对的raspberry连接到我的Google Cloud SQL实例时遇到错误。

这是我安装的步骤:

git clone https://github.com/GoogleCloudPlatform/cloudsql-proxy
cd cloudsql-proxy/
sudo sh download_proxy.sh

我的实例是这样配置的(我在图片和代码中删除了一些字符): Instance

我没有设置网络,因为我将使用代理

然后我将我的JSON密钥下载到同一文件夹中。

wget https://drive.google.com/file/d/my_key.json

启动代理

sudo ./cloud_sql_proxy -instances=be   -     21:us-central1:be   =tcp:3306 \
                  -credential_file=./my_key.json &

但我收到了错误:

  

pi @ pi:〜/ cloudsql-proxy $ ./cloud_sql_proxy:1:./ cloud_sql_proxy:   语法错误:")"意想不到

我尝试删除.json并且在没有凭证之前我遇到了同样的错误,我认为问题出在设置中。

我的主意是: dir ls

感谢任何帮助:)

3 个答案:

答案 0 :(得分:2)

download_proxy.sh下载为CPU的amd64架构(又名x86_64)编译的代理。您的raspberry Pi有一个ARM CPU,因此这个二进制文件无法在您的计算机上运行。

Google不提供代理的预构建ARM版本。我甚至不知道它是否能够在ARM CPU上构建。如果可能,您必须这样做:

  1. 安装go,例如apt-get install golang
  2. 根据https://github.com/golang/go/wiki/GOPATH
  3. 设置GOPATH
  4. 运行go get github.com/GoogleCloudPlatform/cloudsql-proxy/cmd/cloud_sql_proxy
  5. 使用$GOPATH/cloud_sql_proxy -instances=...
  6. 运行代理

答案 1 :(得分:0)

确定。

我正在分享我所做的工作,因为大卫我不知道我下载了什么版本。

我试图避免安装Go,但这是安装它的唯一方法。

Traceback (most recent call last):
  File "dscr.cgi", line 90, in <module>
    client_program()
  File "dscr.cgi", line 79, in client_program
    sum = serverId+";"+name+";"+host+";"+port+";"+proto+";"+user+";"+password+";"+key+";"+company+";"+officeAddr+";"+state+";"+country+";"+ladmin+";"+phone+";"+mobile+";"+email+";"+designation+";"+reportingMgr
TypeError: must be str, not int

但我收到一个错误,因为我已经在同一个端口运行localy的mysql

现在我正在使用unix soquet

sudo apt-get install golang-go
export GOPATH=$HOME/go
go get github.com/GoogleCloudPlatform/cloudsql-proxy/cmd/cloud_sql_proxy
cd $GOPATH/bin
wget your_key.json
sudo ./cloud_sql_proxy -instances=the_full_name_of_the_instance=tcp:3306 -credential_file=./your_key.json &

然后它准备好连接:)

谢谢你们

答案 2 :(得分:0)

我在编译SQL代理时发现了问题。但是,我确实发现instructions here在我的raspberry pi 3上效果很好。必须确保删除所有以前的安装然后重新安装

wget https://storage.googleapis.com/golang/go1.9.linux-armv6l.tar.gz
sudo tar -C /usr/local -xzf go1.9.linux-armv6l.tar.gz
export PATH=$PATH:/usr/local/go/bin # put into ~/.profile`