私はshinyapps.ioでホストしたい私の会社のための光沢のあるアプリケーションを作成しています。このアプリケーションでは、自社のデータベースからデータを取得する必要があります。これは自分のコンピューターで照会できます。しかし、自分のコードにユーザー名とパスワードを直接入れるのではなく、自分のホームディレクトリに保存されている.my.cnfファイルにユーザー名とパスワードを保存しました。私のアプリでは、次のように接続します:shinyapps.ioで光沢のあるアプリケーションをホストするときにデータベースに接続するR
rmysql.settingsfile <- "~/.my.cnf"
rmysql.db1 <- "dbname"
drv <- dbDriver("MySQL")
mydb_connected <- dbConnect(drv, default.file = rmysql.settingsfile, group = rmysql.db1, user = NULL, password = NULL)
これは私をデータベースに接続します。
このコードはすべて私のapp.R shiny appファイルの一番上にあります。残念ながら、アップロードが成功したものの、私は、rsconnect :: deployApp()でアプリを展開した後、アプリが実際に実行されない、と私は私のshinyapps.ioアカウントログに次のエラーが表示されます。
Warning: Error in .local: mysql default file ~/.my.cnf does not exist
私はおそらくこのエラーを回避するために、ユーザ名とパスワードを自分のスクリプトに持ってくることができますが、私の会社は私にこれをしたくありません。私はこれを回避できる他の方法はありますか?
ありがとうございます!
EDIT - 私はおそらくパスワードは、コード内でこのようなものですので、それはしかし、作品にもかかわらず、接続を許可されていないです方法:
mydb_connected <- dbConnect(
MySQL(),
user="admin-read",
dbname="dbname",
host="myhost",
password="mypass"
)
とofcourseの、これは接続のために働きます。
認証は良い選択肢であるために作る必要があります。ガイダンスについては、[this](https://groups.google.com/forum/#!topic/shinyapps-users/J7i_wcU6_uA)スレッドをお読みください。 –