一、先打普通副本還是修羅副本?
普通副本難度比較低,修羅副本難度高
二、如何建立數據庫,利用什么軟件建立數據庫?
啥叫數據庫?excel也可以算,access也可以算,mysql也可以算,hbase也可以算,你要數據庫干啥,決定了你怎么搭建數據庫。
三、數據庫設計?
本文檔明確數據庫設計原則和規范,規范數據庫對象命名方式,見名知意,強化分工,保證數據庫高效穩定運行
1 數據庫設計原則
1) 充分考慮業務邏輯和數據分離,數據庫只作為一個保證ACID特性的關系數據的持久化存儲系統,盡量減少使用自定義函數、存儲過程和視圖,不用觸發器。
2) 充分考慮數據庫整體安全設計,數據庫管理和使用人員權限分離。
3) 充分考慮具體數據對象的訪問頻度及性能需求,結合主機、存儲等需求,做好數據庫性能設計。
4) 充分考慮數據增長模型,決策是否采用“分布式(水平拆分或者垂直拆分)”模式。
5) 充分考慮業務數據安全等級,設計合適的備份和恢復策略。
2 設計規范
2.1 約定
1) 一般情況下設計遵守數據的設計規范3NF,盡量減少非標準范式或者反模式使用。
3NF規定:
? 表內的每一個值都只能被表達一次。
? 表內的每一行都應該被唯一的標識(有唯一鍵)。
? 表內不應該存儲依賴于其他鍵的非鍵信息。
常見關鍵字(不得直接作為相關命名):range、match、delayed、select、and、from、where、not、in、out、add、as、user、name、key、index、type、group、order、max、min、count、concat、by、desc、asc、null等等,更多請參考 MySQL 官方保留字。
2) 數據庫和表的字符集統一:字符集(utf8mb4),排序規則(utf8mb4_general_ci)
2.2 表設計規范
1) 應該根據系統架構中的組件劃分,針對每個組件所處理的業務進行組件單元的數據庫設計;不同組件間所對應的數據庫表之間的關聯應盡可能減少,確保組件對應的表之間的獨立性,為系統或表結構的重構提供可能性。
2) 采用領域模型驅動的方式和自頂向下的思路進行數據庫設計,首先分析系統業務,根據職責定義對象。對象要符合封裝的特性,確保與職責相關的數據項被定義在一個對象之內,不會出現職責描述缺失或多余。
3) 應針對所有表的主鍵和外鍵建立索引,有針對性地建立組合屬性的索引。
4) 盡量少采用存儲過程。
5) 設計出的表要具有較好的使用性。
6) 設計出的表要盡可能減少數據冗余,確保數據的準確性。
2.3 字段規范
1) 一行記錄必須表內唯一,表必須有主鍵。
2) 如果數據庫類型為MYSQL ,應盡量以自增INT類型為主鍵。如果數據庫類型為ORACLE,建議使用UUID為主鍵。
3) 日期字段,如需要按照時間進行KEY分區或者子分區,則使用VARCHAR2類型存儲,存儲格式為:YYYYMMDD 。如若不需要以KEY形式作為分區列,則使用DATE或者DATETIME類型存儲。不建議使用時間戳存儲時間。
4) 字段名稱和字段數據類型對應,如DATE命名字段,則存儲時間精確到日,如TIME命名字段,則存儲時間精確到時分秒,甚至毫秒。
2.4 命名規范類
2.4.1 約定
1) 數據庫對象命名清晰,盡量做到見名知意,在進行數據庫建模時備注對象,便于他人理解。
2) 數據庫類型為MYSQL,采用全小寫英文單詞
3) 數據庫類型為ORACLE,則使用駝峰式命名規范
4) 數據庫對象命名長度不能超過30個字符
3 管理范圍
管理數據庫中所有對象,包括庫,表,視圖,索引,過程,自定義函數,包,序列,觸發器等
3.1 建庫
1) 數據庫名:采用小寫英文單詞簡拼或漢字小寫拼音,多個單詞或拼音采用下劃線"_"連接
2) 數據庫編碼規則及排序規則:字符集(utf8mb4),排序規則(utf8mb4_general_ci)
3) 建庫其他要求:庫名與應用名稱盡量一致
3.2 建表
表名應使用名詞性質小寫英文單詞。如果需要單詞詞組來進行概括,單詞與單詞之間使用英文半角輸入狀態下_連接。如果超長,則從前面單詞開始截取,保留單詞前三位,保留完整的最后一個單詞,如果依然超長,則保留前面單詞首字母,直接和最后一個單詞連接;臨時表命名以TMP開頭,命名格式為TMP_模塊/用途名稱_名字拼音首字母;表名不能直接采用關鍵字命名
1) 表命名:采用“業務名稱_表的作用”格式命名(例如:alipay_task / force_project / trade_config)
2) 建表其他要求:表名長度不能超過30個字符;一定要指定一個主鍵字段;必須要根據業務對表注釋;如果修改字段含義或對字段表示的狀態追加時,需要及時更新字段注釋;
3) 表必備字段:
`is_delete` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '狀態(1刪除、0未刪除)',
`is_enabled` tinyint(1) unsigned NOT NULL DEFAULT '1' COMMENT '狀態(1啟用、0作廢)',
`op_first` varchar(50) DEFAULT NULL COMMENT '創建人',
`op_first_time` datetime DEFAULT NULL COMMENT '創建時間',
`op_last` varchar(50) DEFAULT NULL COMMENT '更新人',
`op_last_time` datetime DEFAULT NULL COMMENT '更新時間',
3.3 建字段
1) 字段命名:
表中標識唯一性字段必須以標識性簡稱+id命名。其余字段根據存儲信息,使用名詞性質英文單詞表示,如需要單詞詞組來進行概括,單詞與單詞之間使用英文半角輸入狀態下_連接。外鍵引用字段使用外鍵表_id的形式命名;字段名必須使用小寫字母或數字,禁止出現數字開頭,禁止兩個下劃線中間只出現數字;表達是與否概念的字段,必須使用 is_xxx 的方式命名,數據類型是 unsigned tinyint;表達邏輯刪除的字段名 is_deleted,1 表示刪除,0 表示未刪除
2) 字段類型、長度
如果存儲的字符串長度幾乎相等,使用 char 定長字符串類型;小數類型為 decimal;id 必為主鍵,類型為 bigint unsigned;應盡量以自增INT類型為主鍵;優先選擇符合存儲需要的最小的數據類型;將字符串轉化為數字類型存儲;對于非負數據采用無符號整形進行存儲signed int -2147483648-2147483648,unsigned int 0-2147483648,有符號比無符號多出一倍的存儲空間;varchar(n) n代表字符數,不是字節數,varchar(255)=765個字節,過大的長度會消耗更多的內存;避免使用text\BLOB數據類型,建議text\BLOB列分離到單獨的擴展表中,text\BLOB類型只能使用前綴索引;避免使用enum數據類型,修改enum需要使用alter語句,enum類型的order by操作效率低,需要額外操作,禁止使用數值作為enum的枚舉值;盡可能把所有列定義為not null,索引null列需要額外的空間來保存,所以要占用更多的空間,進行比較和計算時要對null值做特別的處理;禁止字符串存儲日期型的數據,缺點1:無法用日期函數進行計算和比較,缺點2:用字符串存儲日期要占用更多的空間;使用timestamp或datetime類型存儲時間,timestamp存儲空間更小;財務的相關金額使用decimal類型,decimal類型為精準浮點數,在計算時不會丟失精度,float、double非精準浮點數
3) 字段其他要求
字段名稱長度不能超過30個字符、盡量減少或者不使用聯合主鍵、字段盡可能不允許為null(為null時設定默認值)、文本類型字段,屬性 字符集(utf8mb4),排序規則(utf8mb4_general_ci)、字段必須根據業務進行注釋。
3.4 建索引
主鍵索引名為 pk_字段名;唯一索引名為 uk_字段名;普通索引名則為 idx_字段名。
說明:pk_ 即 primary key;uk_ 即 unique key;idx_ 即 index 的簡稱。
3.5 創建數據庫表視圖
1) 視圖命名:以"v_項目名/模塊名_用途"格式命名
2) 視圖其他要求:視圖名稱長度不能超過30個字符
3.6 建存儲過程及自定義數據庫函數
1) 存儲過程命名:以"sp_用途"格式命名
2) 自定義數據庫函數:以“fn_用途”格式命名
3) 存儲過程或自定義數據庫函數:參數命名以“p_”開頭命名;內部變量命名以“v_”開頭命名;游標命名以“cur_loop_”開頭命名;循環變量命名以“i_found_”開頭命名。
3.7 建數據庫用戶
用戶命名:采用授權用戶姓名全拼小寫命名
3.8 其他要求
1) 查詢大數據表,參數字段需建索引;
2) 數據庫表、字段刪除或變更操作(a-不需要的表或字段,一般備注“作廢”即可;b-需要修改的表或字段,先備注作廢原表或原字段,再創建新表或新字段,且備注好作廢原因。);
四、數據庫類型有哪些,目前主流數據庫是哪種?
關系型數據庫,非關系型數據庫(NoSQL),鍵值(Key-value)數據庫。主流的數據庫那就是關系型數據庫了,特別是關系型數據庫中的分布式數據庫。墨天輪最新排名(2022.11)數據庫前十榜單中關系型數據庫占了1-9名,前二十榜單中也僅有兩個非關系型數據庫。關系型數據庫之所以占了絕大部分數據庫份額,是因為關系型數據庫作為成熟的數據庫技術理念,其精髓的范式設計,嚴謹的一致性,原子性,完整性等優勢是無法被取代的。
AntDB在運營商深耕了十幾年,覆蓋了OLTP與OLAP場景,是非常典型的HTAP類型的關系型數據庫,業務覆蓋計費、CRM等核心交易,同時覆蓋清算分析等分析型業務。比如AntDB數據庫服務于中國電信某省計費系統上云,包含數據層、批價和出賬流程等大規模業務。在系統設計上,將資源、資產等交易熱數據遷移到AntDB數據庫,極大地提高了業務關鍵數據的訪問效率,整體提高了話單事務的處理性能。AntDB數據庫支撐10億用戶的通信交易場景,進行在線交易與數據分析處理的HTAP混合負載,幫助客戶解決核心系統解決海量數據管理難題,基于分布式的架構設計,實現了在線彈性伸縮、強一致性事務、跨機房高可用等能力。
五、副本概念?
概念:每一個隊伍進入副本時,他們會各自擁有自己隊伍的地圖,不同的對伍看不到彼此,也無法互相支援。“副本”的概念最初是在著名網游“無盡的任務”中出現的,簡稱“FB”。 例子:隊伍1進入了地下城XX。他們進入的是地下城XX的拷貝A。
隊伍2同樣進入地下城XX,他們將不會進入拷貝A,而是進入拷貝B。
六、人機副本和真人副本獎勵區別?
人機副本和真人副本的獎勵區別主要體現在以下幾個方面:1. 難度程度:人機副本一般由游戲內置的電腦控制角色扮演,難度相對較低,而真人副本則由其他真實玩家組成,難度更大。由于真人玩家的智能和反應能力更具挑戰性,真人副本的難度更高,因此通關真人副本可以獲得更高級別的獎勵。2. 獎勵數量和品質:真人副本通常會提供更多的獎勵,這可能是因為真人副本需要更多的時間和精力來完成,游戲開發商為了激勵玩家參與和完成副本設定了更多、更高品質的獎勵。而人機副本的獎勵一般較少,可能是因為其難度較低,通關對于玩家來說相對容易。3. 社交互動:真人副本多為多人合作游戲,需要組隊與其他真實玩家協作完成任務,因此可以通過多人社交互動獲得更好的游戲體驗。而人機副本則可以由單人完成,無需依賴其他真實玩家,因此社交互動較少。綜上所述,人機副本和真人副本獎勵區別主要體現在難度、獎勵數量和品質、社交互動等方面。
七、日常副本中有幾種副本類型?
魔獸世界日常副本只有一種模式,就是英雄模式,會有完成任務獎勵。
八、數據庫設計 案例?
以下是一個簡單的MySQL數據庫設計案例,以存儲學生和課程信息為例:
假設我們有兩個實體:學生(Student)和課程(Course),每個學生可以選擇多個課程,每個課程可以被多個學生選擇。
首先,我們創建兩個表來表示學生和課程:
Student表
| 列名 | 類型 |
|---|---|
| student_id | INT (主鍵) |
| name | VARCHAR |
| age | INT |
| gender | VARCHAR |
Course表
| 列名 | 類型 |
|---|---|
| course_id | INT (主鍵) |
| name | VARCHAR |
| credit | INT |
| instructor | VARCHAR |
接下來,我們需要創建一個關聯表來存儲學生和課程之間的關系,表示學生選擇了哪些課程:
Student_Course表
| 列名 | 類型 |
|---|---|
| student_id | INT (外鍵) |
| course_id | INT (外鍵) |
在Student_Course表中,student_id和course_id列分別作為外鍵,關聯到Student表和Course表的主鍵。
這種設計模式稱為"多對多"關系,通過使用關聯表來實現學生和課程之間的多對多關系。
通過以上的數據庫設計,你可以存儲和查詢學生、課程以及學生選擇的課程的信息。當然,具體的數據庫設計取決于你的實際需求和業務規則,上述僅提供了一個簡單的示例。
九、考研數據庫方向???
一直從事分布式數據庫開發,說點個人感受吧。數據庫本身比較難,比一般的軟件開發要難,尤其是內核和調休,會牽扯各種問題,需要對操作系統原理,算法,數據結構都有比較好的掌握,但是這個前景還是很好的,作為數據存儲核心,待遇一般還是不錯的。如果以后做DBA會非常辛苦,單純開發如果不出差也還不錯。
國內數據庫研究做的比較好的高校包括人民大學,華科,南開,華師大等等,很多高校是沒有這個研究方向的,或者有數據存儲方向也是偏向大數據,這個與國內互聯網環境有關系,人工智能太火導致傳統操作系統,編譯器,數據庫這幾個最難的基礎軟件沒有人愿意去做,但是又非常重要。
從中美貿易摩擦來看,以后基礎軟件國產化是必然,但是路很長很長,不是一年兩年甚至也不是十年二十年。
十、怎樣創建數據庫?
謝邀~
樹懶君精心整理了一番,接下來就4種流行數據庫的創建方法介紹。
一、創建數據庫簡介
數據庫是儲存關鍵資料的文件系統,用數據庫管理系統建立大家的數據庫,就可以更好地提供安全性。如今伴隨著社會發展的迅速化趨勢,數據庫獲得了極大的運用,數據庫為前端和后臺的程序都提供了數據和信息支持。因此,對于想管理好數據庫的你來說,必須明白怎樣建立數據庫,那么如何建立呢?跟著本文一起來學習吧。
二、4種主流數據庫創建方式
2.1 MySQL創建數據庫
MySQL中創建數據庫的基礎英語的語法文件格式以下。
CREATE DATABASE db_name;在其中“db_name”是即將創建的數據庫名字,該名字不可以與早已存有的數據庫同名。
實例:創建 MySQL 數據庫,名稱為 shulanxt:
CREATE DATABASE shulanxt;按回車執行上述語句,即可創建名叫 shulanxt 的數據庫。
2.2 SQL Server創建數據庫
SQLServer創建數據庫的方式有兩種:
- 根據運作SQL腳本制作;
- 應用SQLServer管理方法模塊創建數據庫。
以下流程將展現怎么使用SQLServer管理方法模塊在SQLServer2014創建數據庫。
在目標任務管理器中,右鍵單擊數據庫文件夾名稱/標志,隨后挑選Newdatabase…:
開展數據庫取名,這里叫“TaskTracker”,隨后點一下“OK”,即完成創建:
2.3 Oracle創建數據庫
2.3.1 創建新用戶并授與管理權限
最先,起動SQLplus程序的命令行:
sqlplus如下所示:
注意:也可以從菜單欄的安裝文件直接開啟 SQLPlus。
當SQLPlus起動后,使用在安裝Oracle數據庫網絡服務器時鍵入的登陸密碼以sys用戶身份登陸:
C:\Users\Administrator>sqlplus
SQL*Plus:Release11.2.0.1.0Productionon星期五11月1004:32:172017
Copyright(c)1982,2010,Oracle.Allrightsreserved.
請輸入用戶名:sysassysdba
輸入口令:隨后,應用下列CREATEUSER句子創建一個新用戶:ot,用以在可插進數據庫中創建實例數據庫:
SQL> CREATE USER OT IDENTIFIED BY Orcl1234;
User created.上邊的句子創建了一個名叫 OT 的新用戶,并在 IDENTIFIED BY 子句以后特定了一個登陸密碼,在這個實例中,創建的客戶OT相匹配的登陸密碼為Orcl1234。
然后,根據下列GRANT句子授與OT用戶權限:
SQL> GRANT CONNECT,RESOURCE,DBA TO OT;
Grant succeeded.2.3.2 登陸新賬戶
用OT客戶賬號聯接到數據庫(ORCL)。當SQLPlus提醒鍵入登錄名和登陸密碼時,鍵入OT和Orcl1234。
針對Oracle11g/12c,應用以下指令:
SQL> CONNECT ot@orcl
鍵入動態口令:
已連接。2.4 DB2創建數據庫
創建DB2數據庫的方式關鍵有二種,分別是:應用界面方法和應用指令方法,下邊各自開展解讀。
2.4.1 應用頁面方法創建數據庫
挑選在安裝后開啟“DB2第一步”起動控制面板來創建數據信息
2.4.2 應用指令方法創建數據庫
啟用DB2“命令編輯器”,在“命令編輯器”鍵入
CREATE DATABASE db_name其中“db_name”是即將創建的數據庫名字,該名字不可以與存有的數據庫同名。
示例:創建數據庫 shulanxt,輸入如下語句:
CREATE DATABASE shulanxt;按回車執行句子,創建名叫 shulanxt 的數據庫。
DB20000I The CREATE DATABASE command completed successfully.以上就是在主流的4種數據庫中創建數據庫的方法介紹,希望能給學習數據庫的大家帶去幫助,獲取更多數據庫相關知識,請關注樹懶學堂。
原文出自:數據庫創建_數據庫創建方法_4種數據庫_方法介紹 - 樹懶學堂
