最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

MySQL數據庫遷移OpenGauss數據庫解析

 更新時間:2022年09月27日 14:33:00   作者:shenyang1026  
這篇文章主要介紹了MySQL數據庫遷移OpenGauss數據庫解析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

環(huán)境

華為云服務器 4核 8G CentOS 8.0 64位

  • JDK11
  • Data Grip
  • xshell
  • xftp
  • mysql 8

安裝OpenGauss

1.此次安裝基于Docker進行安裝

docker安裝步驟自行解決

# 基于docker進行安裝
$ docker run --name opengauss --privileged=true -p 5432:5432 -d -e GS_PASSWORD=Enmo@123 enmotech/opengauss:latest

# 解釋:-p 5432:5432 表示外部5432端口映射到容器中的5432端口
# GS_PASSWORD=Enmo@123 表示使用數據庫連接密碼為Enmo@123
# 這里我試過修改成其他密碼但是都連接不上,具體為什么還不知道

注意:docker run時會自動下載對應的鏡像,所以安裝完docker直接執(zhí)行即可。另外執(zhí)行完這個命令后數據庫就已經啟動了,可以嘗試用第三方工具來連接數據庫(例如DataGrip),注意要放行端口確保安全組和防火墻都是放行的。

2.DataGrip連接數據庫

其實高斯數據庫就是基于Postgres數據庫實現的,使用datagrip連接數據庫時數據源可以直接選擇postgres即可,后續(xù)代碼中使用的jdbc也可以直接使用postgres

host:ip地址

port:默認5432

創(chuàng)建并導入數據

3.新建數據庫

我們在postgres下新建一個名為it_service的數據庫

這里新建可以使用sql語句也可以使用可視化工具

4.在it_service數據庫下創(chuàng)建并導入所有項目必要數據

直接將sql文件導入datagrip中,并執(zhí)行即可

這里需要特別注意,高斯數據庫中的數據類型和語法和mysql中的語法有很多區(qū)別。

下面羅列幾種常見的需要修改的語法:

  • 高斯數據庫中對字段不需要使用``來包裹
  • 高斯數據庫中沒有datetime數據類型 取而代之的是date數據類型
  • 高斯數據庫中沒有tinyint數據類型,這里可以直接使用integer代替
  • 高斯數據庫中沒有sysdate() 函數,可以用 now()代替
  • 高斯數據庫中創(chuàng)建約束索引、自增的語法不同,我是通過datagrip的可視化配置來創(chuàng)建索引的

修改后端項目

由于將數據庫從mysql切換到高斯數據庫,我們項目中配置的datasource參數就需要進行相應的改變

1.在maven中加入postgres依賴(前面提到過,高斯數據庫是基于postgres實現的,所以直接導入postgres依賴即可)

<dependency>
    <groupId>org.postgresql</groupId>
    <artifactId>postgresql</artifactId>
    <version>42.3.4</version>
</dependency>

2.修改application.yml

spring:
  datasource:
    username: ${賬號}
    password: ${密碼}
    url: jdbc:postgresql://${ip地址}:${端口號}/postgres
    driver-class-name: org.postgresql.Driver
# ${} 中的內容需要自己填寫

3.修改xxxMapper.xml中高斯數據庫不兼容的語法

部署后端項目

1.本地使用maven package打包

2.打包后將target目錄下生成.jar文件上傳到云服務器上(可以使用xftp等工具)

3.運行并測試啟動是否正常

$ java -jar itservice-server-0.0.1-SNAPSHOT.jar

4.使用postman等工具訪問并測試

5.確認無誤后 CTRL+C關閉當前程序,并使用后臺啟動

$ nohup java -jar itservice-server-0.0.1-SNAPSHOT.jar &

部署前端項目

基于docker進行部署vue項目

1.下載nginx鏡像

$ docker pull nginx:latest

2.編寫nginx配置文件

worker_processes auto;

events {
? ? worker_connections 1024;
}

http {
?include ? ? ? ? ? ? mime.types;
?? ??? ?
?default_type ? ? ? ?application/octet-stream;
?#開啟文件傳輸服務?? ?
?sendfile ? ? ? ? ? ?on;
?#設置保持鏈接時間
?keepalive_timeout 65;
?
?client_max_body_size 20m;
?
? ? server {
? ? ? ? listen ? ? ? 80;
? ? ? ? server_name ?localhost;
? ? ? ? location / {
?? ??? ??? ?root /usr/share/nginx/html/it-service; #配置Vue項目根路徑,與
?? ??? ??? ?index index.html index.html; #配置首頁
?? ??? ??? ?try_files $uri $uri/ /index.html; #防止刷新報404
?? ??? ?}

? ? ? ? error_page 500 502 503 504 /50x.html;
? ? ? ? ? ? location = /50x.html {
?? ??? ??? ?root html;
? ? ? ? }
? ? }
}

3.編寫Dockerfile文件

FROM nginx
# 將dist目錄 拷貝到 容器中的 it-service目錄下(注意這個it-service目錄必須和上面nginx配置文件中的映射路徑相同)
COPY dist/.  /usr/share/nginx/html/it-service/
# 將nginx的配置文件 替換掉 容器中的配置文件(注意這里是直接替換的nginx.conf),也就是說我們寫的conf文件必須是完整的一個nginx配置文件
COPY default.conf  /etc/nginx/nginx.conf

4.制作鏡像

$ docker build -t itservice-nginx .

5.啟動容器

$ docker run -d -p 80:80 itservice-nginx

6.訪問測試

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • MySQL從一個表中查出數據并插入到另一個表的詳細處理方案

    MySQL從一個表中查出數據并插入到另一個表的詳細處理方案

    這篇文章主要給大家介紹了關于MySQL從一個表中查出數據并插入到另一個表的詳細處理方案,文中通過圖文介紹的非常詳細,對大家學習或者使用MySQL具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-12-12
  • MySQL使用innobackupex備份連接服務器失敗的解決方法

    MySQL使用innobackupex備份連接服務器失敗的解決方法

    這篇文章主要為大家詳細介紹了MySQL使用innobackupex備份連接服務器失敗的解決方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • mysql中的判斷函數和分支語句詳解

    mysql中的判斷函數和分支語句詳解

    本文介紹了SQL中常用的判斷函數和分支語句,判斷函數包括if()、ifnull()以及nullif(),用于處理數據判斷和空值處理,分支語句分為多條件判斷和固定值判斷,便于根據不同條件執(zhí)行相應邏輯,這些功能在數據處理和查詢中非常實用
    2024-10-10
  • 優(yōu)化 MySQL 3 個簡單的小調整

    優(yōu)化 MySQL 3 個簡單的小調整

    本文給大家?guī)砹藘?yōu)化 MySQL 3 個簡單的小調整,需要的朋友參考下
    2018-02-02
  • MySQL 觸發(fā)器定義與用法簡單實例

    MySQL 觸發(fā)器定義與用法簡單實例

    這篇文章主要介紹了MySQL 觸發(fā)器定義與用法,結合簡單實例形式總結分析了mysql觸發(fā)器的語法、原理、定義及使用方法,需要的朋友可以參考下
    2019-09-09
  • 總結MySQL修改最大連接數的兩個方式

    總結MySQL修改最大連接數的兩個方式

    最大連接數是可以通過mysql進行修改的,mysql數據庫修改最大連接數常用有兩種方法,今天我們分析一下這兩種方法之間的特點和區(qū)別,以便我們能更好的去維護mysql。下面我們來看一下mysql修改最大連接數的方法,希望文章能夠幫助到各位朋友。
    2016-08-08
  • mysql-5.7.28 在Linux下的安裝教程圖解

    mysql-5.7.28 在Linux下的安裝教程圖解

    這篇文章主要介紹了mysql-5.7.28 的Linux安裝,本文通過圖文并茂的形式給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-10-10
  • MySQL5.7安裝過程并重置root密碼的方法(shell 腳本)

    MySQL5.7安裝過程并重置root密碼的方法(shell 腳本)

    由于 MySQL 5.7 版本的 root 密碼是首次啟動時隨機生成的,并且還要求必須修改后才能使用。下面小編給大家分享使用shell 腳本完成安裝和設置新的 root 密碼的方法,一起看看吧
    2016-12-12
  • Mysql中Table ‘XXX’ is marked as crashed and last (automatic?)問題解決方法

    Mysql中Table ‘XXX’ is marked as crashed and last (automatic?)

    這篇文章主要介紹了Mysql中Table ‘XXX’ is marked as crashed and last (automatic?)問題解決方法,需要的朋友可以參考下
    2014-05-05
  • Mysql中explain命令返回參數的具體使用

    Mysql中explain命令返回參數的具體使用

    EXPLAIN返回的關鍵列包括id、select_type、table、type、possible_keys、key、key_len、ref、rows和Extra等,本文就來介紹Mysql中explain命令返回參數,感興趣的可以了解一下
    2024-09-09

最新評論

安多县| 望江县| 洱源县| 汉源县| 孙吴县| 曲阜市| 青冈县| 涟水县| 兴宁市| 秦皇岛市| 咸丰县| 阜平县| 新民市| 常山县| 临清市| 灵武市| 武义县| 林甸县| 泽州县| 新晃| 兰西县| 廊坊市| 库尔勒市| 苍山县| 正镶白旗| 抚宁县| 伊宁县| 滨海县| 清河县| 五指山市| 渭源县| 盐池县| 中牟县| 化隆| 杭锦后旗| 报价| 汕头市| 北票市| 定结县| 长寿区| 安仁县|