發表文章

目前顯示的是 11月, 2016的文章

使用Azure SQL Database (PaaS)技巧

圖片
在Azure上建立SQL Database可快速享受高可用/延展的好處 建立從選單開始大家都會建立 以下講一些比較特別的部分 A. 還原/匯入資料庫不能使用.BAK,我們一般在還原SQL database時習慣使用備份成.bak檔案,再進行資料的還原。不過在Azure sql database上我們要使用bacpac檔案格式。 作法如下 從 資料庫中將資料備份出來: 開啟 Management Studio 並連接到您在 [物件總管] 中的來源資料庫。 以滑鼠右鍵按一下 [物件總管] 中的來源資料庫,指向 [工作],並按一下 [匯出資料層應用程式]。 在匯出精靈中,將匯出設定為將 BACPAC 檔案儲存到本機磁碟位置或 Azure Blob。匯出的 BACPAC 一律會包含完整的資料庫結構描述,以及預設之所有資料表的資料。如果您想要排除部分或所有資料表的資料,請使用 [進階] 索引標籤。比方說,您可能會選擇只匯出參考資料表的資料,而不是所有資料表的資料。 重要:  將 BACPAC 匯出至 Azure blob 儲存體時,請使用標準儲存體。不支援從進階儲存體匯入 BACPAC。 B. 記得將azure sql database防火牆打開,這個不太是問題,因為如果沒有打開而嘗試練入AZURE返回錯誤訊息中會提示要打開firewall C. DB帳號的建立,SQL DB帳號建立很麻煩沒有UI可以用要下指令 不熟悉的人可以利 用此 工具 建帳號 See also : 1. 使用 SQL Server Management Studio 將 SQL Server 資料庫匯出到 BACPAC 檔案 2. 匯入 BACPAC 檔案以建立新的使用者資料庫

SQL SERVER 用戶/管理員的權責區分

資料庫管理的權責問題 一直都是一個很微妙的事 下表示我管理資料庫的權責依據 提供大家參考 項目 使用者 DB管理員 各資料庫基本資訊   V 各主機磁碟空間資訊---各磁碟空間使用狀況   V 定期維護紀錄 伺服器保養   V 作業系統LOG   V SQL LOG   V 各資料庫空間使用狀態(含交易LOG空間)   V 資料庫作業排程執行狀況   V 資料庫備份狀態   V 伺服器效能包含 CPU、Memory峰值及均值   V 資料庫異動狀況(月份)新增或刪除   V 資料表異動狀況(月份)新增或刪除 V   資料庫主機參數設定   V 資料庫參數設定 V   表格最佳化(RUNSTATS) V   資料庫語法與改善建議 CPU 高峰值對應 NMON 查出耗效能之 SQL 語法,提出改善建議: 看 CPU : 活動 - 所有資料指標 活動 - 排名最前面的資料指標 活動 - 所有工作階段 活動 - 排名最前面的工作階段 活動 - 休眠工作階段 活動 - 排名最前面的連接 依存在時間的排名最前面交易 效能 - 批次執行統計資料 效能 - 物件執行統計資料 效能 - 依平均 CPU 時間的排名最前面查詢 效能 - 依總 CPU 時間的排名最前面查詢 看記憶體: 記憶體耗用量 看 Deadlock : 依被封鎖交易技術的排名最前面交易 依鎖定計數器的排名最前面交易 活動 - 所有進行封鎖交易 磁碟耗用狀態: 效能 - 依平均 IO 的排名最前面查詢 效能 - 依總 IO 的排名最前面查詢 索引的資訊: 高成本耗用 組態變更紀錄 ...

如何在POWERMAP插入圖片

圖片
如何在 POWER MAP 插入圖片 1. 進入 POWERMAP 後,在地圖的 資料點 上按滑鼠右鍵,新增註解 2. 新增註解的部分可以選擇圖像 3. 選擇圖片 即完成 See also :

SQL Server 如何讓DB_OWNER看到更多資料庫報表

圖片
SQL SERVER預設就建了很多報表 但是我們通常提供用戶的權限角色是DB_OWNER DB_OWNER 只能看到以下 SQL 預設報表 磁碟耗用狀態: 磁碟使用量 依資料表的磁碟使用量 依分割區的磁碟使用量 排名最前面資料表的磁碟使用量 索引的資訊: 索引實體統計資料(耗效能,需於離峰時間執行) 其他: 備份與還原事件 但如果 Grant VIEW SERVER 權限後 USE master ;   GRANT VIEW SERVER STATE TO TESTUSER(登入帳號) ;   GO   則DB_OWNER可以看到 看 CPU : 所有交易 物件執行統計資料 依存在時間的排名最前面交易 看記憶體:   記憶體最佳化物件的記憶體使用量 物件執行統計資料 看 Deadlock : 所有進行封鎖交易 依鎖定計數的排名最前面交易 依被封鎖交易計數的排名最前面交易 磁碟耗用狀態:   磁碟使用量 依資料表的磁碟使用量 依物件的資源鎖定統計資料 依分割區的磁碟使用量 使用者統計資料 排名最前面資料表的磁碟使用量 索引的資訊: 索引實體統計資料( 耗效能,需於離峰時間執行 ) 索引使用量統計資料 其他: 資料庫一致性記錄 結構描述變更記錄 備份與還原事件 See also : GRANT 伺服器權限 (Transact-SQL)

JAVA Servlet create image on fly (API直接產生圖形輸出)

* 需求:呼叫API的時候直接透過java graphic api進行產生圖形後輸出 常見於動態產生圖片(浮水印/驗證圖形/) import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.swing.ImageIcon; import java.awt.Color; import java.awt.Font; import java.awt.GradientPaint; import java.awt.Graphics2D; import java.awt.Image; import java.awt.image.BufferedImage; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import com.sun.image.codec.jpeg.JPEGCodec; @WebServlet("/ImageCreator") public class ImageCreator extends HttpServlet { private static final long serialVersionUID = 1L;   private static int FrameWidth=554;   private static int FrameHeight=900;;     public ImageCreator() {         super();       ...

JAVA Servlet 列舉TOMCAT字型 與設定(上傳)客製化字型

圖片
因為有個案子是使用百度雲 由於官方並沒有雲端環境字型的清單 因此我自己寫了一個程式 列舉該環境可用的字型 以及上傳自己的字型 以下是列舉 import java.awt.GraphicsEnvironment; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/getFont") public class getFont extends HttpServlet { private static final long serialVersionUID = 1L; private PrintWriter out;         public getFont() {         super();         // TODO Auto-generated constructor stub     } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); response.setContentType("text/html; charset=UTF-8"); out = response.getWrite...