SpreadSheet에서 CloudSQL (MySQL)에 연결하는 방법
7061 단어 cloudsqlspreadsheet
장점
서버측 API나 클라이언트측을 만들 필요가 없기 때문에, 우선 손쉽게 관리 화면을 만들고 싶을 때에 편리.
적합하지 않은 점
전 자료
ぇぺぺrs. 오, ぇ. 코 m / 아 ps-sc 리 pt / 구이 s / jdbc
이쪽을 일본어로 해, 자신이 망설인 곳을 보전하고 있습니다.
준비
IP 주소 허용
다음 주소를 CloudSQL에 액세스할 수 있습니다.
64.18.0.0/20
64.233.160.0/19
66.102.0.0/20
66.249.80.0/20
72.14.192.0/18
74.125.0.0/16
173.194.0.0/16
207.126.144.0/20
209.85.128.0/17
216.239.32.0/19
GCP 콘솔에서라면 하나씩 밖에 할 수 없어, 매우 귀찮기 때문에, gcloud 커멘드를 사용합니다.
sql instances patch [インスタンスID] --authorized-networks=64.18.0.0/20,64.233.160.0/19,66.102.0.0/20,66.249.80.0/20,72.14.192.0/18,74.125.0.0/16,173.194.0.0/16,207.126.144.0/20,209.85.128.0/17,216.239.32.0/19 --project [プロジェクト名]
인스턴스 ID는 이것입니다.
프로젝트 이름은 GCP의 프로젝트 이름입니다.
잘하면 GCP 콘솔의 CloudSQL에서 "연결"을 선택하면 다음과 같은 화면이됩니다.
GAS 쓰기
SpreadSheet에서 도구 - 스크립트 편집기에서 작성합니다.
자세한 내용은 할애합니다.
/**
* Read up to 1000 rows of data from the table and log them.
*/
function readFromTable() {
var connectionName = 'インスタンス接続名';
var user = 'ユーザ名';
var userPwd = 'パスワード';
var db = 'DB名';
var dbUrl = 'jdbc:google:mysql://' + connectionName + '/' + db;
var conn = Jdbc.getCloudSqlConnection(dbUrl, user, userPwd);
var start = new Date();
var stmt = conn.createStatement();
stmt.setMaxRows(1000);
var results = stmt.executeQuery('SELECT * FROM テーブル名');
var numCols = results.getMetaData().getColumnCount();
while (results.next()) {
var rowString = '';
for (var col = 0; col < numCols; col++) {
rowString += results.getString(col + 1) + '\t';
}
Logger.log(rowString);
}
results.close();
stmt.close();
var end = new Date();
Logger.log('Time elapsed: %sms', end - start);
}
인스턴스 접속명은 이쪽을 참조한다.
시간이 없지만 아무래도 관리 화면이 필요! 라고 할 때는 적합합니다.
Reference
이 문제에 관하여(SpreadSheet에서 CloudSQL (MySQL)에 연결하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/tab02733/items/e48b2bb08fa0df98a75c
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
64.18.0.0/20
64.233.160.0/19
66.102.0.0/20
66.249.80.0/20
72.14.192.0/18
74.125.0.0/16
173.194.0.0/16
207.126.144.0/20
209.85.128.0/17
216.239.32.0/19
sql instances patch [インスタンスID] --authorized-networks=64.18.0.0/20,64.233.160.0/19,66.102.0.0/20,66.249.80.0/20,72.14.192.0/18,74.125.0.0/16,173.194.0.0/16,207.126.144.0/20,209.85.128.0/17,216.239.32.0/19 --project [プロジェクト名]
SpreadSheet에서 도구 - 스크립트 편집기에서 작성합니다.
자세한 내용은 할애합니다.
/**
* Read up to 1000 rows of data from the table and log them.
*/
function readFromTable() {
var connectionName = 'インスタンス接続名';
var user = 'ユーザ名';
var userPwd = 'パスワード';
var db = 'DB名';
var dbUrl = 'jdbc:google:mysql://' + connectionName + '/' + db;
var conn = Jdbc.getCloudSqlConnection(dbUrl, user, userPwd);
var start = new Date();
var stmt = conn.createStatement();
stmt.setMaxRows(1000);
var results = stmt.executeQuery('SELECT * FROM テーブル名');
var numCols = results.getMetaData().getColumnCount();
while (results.next()) {
var rowString = '';
for (var col = 0; col < numCols; col++) {
rowString += results.getString(col + 1) + '\t';
}
Logger.log(rowString);
}
results.close();
stmt.close();
var end = new Date();
Logger.log('Time elapsed: %sms', end - start);
}
인스턴스 접속명은 이쪽을 참조한다.
시간이 없지만 아무래도 관리 화면이 필요! 라고 할 때는 적합합니다.
Reference
이 문제에 관하여(SpreadSheet에서 CloudSQL (MySQL)에 연결하는 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/tab02733/items/e48b2bb08fa0df98a75c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)