在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/ 數(shù)據(jù)庫問答
笑浮塵 回答

????事務(wù)隔離等級:

  • 未提交讀(READ UNCOMMITED) :兩個事務(wù)之間互相可見,即使另一個事務(wù)沒有提交也可以獲取數(shù)據(jù)(不推薦),這就是所謂的臟讀
  • 已提交讀(READ COMMITED):符合隔離性的基本概念,一個事務(wù)進行時,其它已提交的事物對于該事務(wù)是可見的,即可以獲取其它事務(wù)提交的數(shù)據(jù)。
  • 可重復(fù)讀(REPEATABLE READ) :InnoDB的默認隔離等級。事務(wù)進行時,其它所有事務(wù)對其不可見,即多次執(zhí)行讀,得到的結(jié)果是一樣的!
  • 可串行化SERIALIZABLE): 在讀取的每一行數(shù)據(jù)上都加鎖,會造成大量的鎖超時和鎖征用,嚴格數(shù)據(jù)一致性且沒有并發(fā)是可使用。

clipboard.png

????查看系統(tǒng)的事務(wù)隔離級別:show variables like '%iso%';
????開啟一個新事務(wù):begin;
????提交一個事務(wù):commit;
????修改事物的隔離級別:set session tx_isolation='read-committed';

萌二代 回答

代碼重復(fù)的部分多,那么關(guān)鍵就是找出不重復(fù)的地方是什么,然后把重復(fù)的地方先弄成一塊,再按照不同的條件細分。

比如,你這上面的語句有很多按照$_sortType來判定排序的,自然你可以先用一個參數(shù)來存儲最基本的查詢語句;

$basic = DB::table('shop_goods')
            ->where('goods_cid',$_path)
            ->where('goods_status',1) // 0未審核 1審核通過 2審核未通過
            ->where('goods_state',0) // 0已上架 1已下架
            ->where('goods_recycle',0) // 0正常 1回收站

然后再根據(jù)$_sortType進行條件判斷:

if($_sortType=="composite" || $_sortType==""){ //綜合 或 沒有
    $data = $basic
                ->skip($page)
                ->take(4)
                ->get();
}else if($_sortType=="price_up"){ //價格最低
    $data = $basic
                ->orderBy('goods_price','asc') // 價格最低
                ->skip($page)
                ->take(4)
                ->get();
}else if($_sortType=="price_down"){ //價格最高
    $data = $basic
                ->orderBy('goods_price','desc') // 價格最高 
                ->skip($page)
                ->take(4)
                ->get();
}else if($_sortType=="assess_down"){ // 評價最多
    $data = DB::table('shop_goods')
                ->leftJoin('shop_assess', 'shop_goods.goods_id', '=', 'shop_assess.assess_gcode')
                ->selectRaw('shop_goods.*,COUNT(shop_assess.assess_id) as assess_num')
                ->where('shop_goods.goods_cid',$_path)
                ->where('shop_goods.goods_status',1) // 0未審核 1審核通過 2審核未通過
                ->where('shop_goods.goods_state',0) // 0已上架 1已下架
                ->where('shop_goods.goods_recycle',0) // 0正常 1回收站
                ->groupBy('shop_goods.goods_id')
                ->orderBy('assess_num','desc')
                ->get();
}else if($_sortType=="publish_new"){ //最新發(fā)布
    $data = $basic
                ->orderBy('goods_time','desc') // 最新發(fā)布
                ->skip($page)
                ->take(4)
                ->get();
}

大概的思路就是這樣。

久礙你 回答

如果你的 mongo 安裝時將 bin 目錄加入了環(huán)境變量, 可以用 whereis mongodump 來找到這條命令在哪.
如果沒有加入環(huán)境變量, 可以用 ps -ef | grep mongo 命令查看你的 mongo 是如何被啟動的.
如果你的 mongo 是手敲命令啟動的, 那么上面這條命令就可以顯示出你的啟動命令, 你也就找到了 mongo 的 bin 目錄.
如果你的 mongo 是用諸如 systemd 等方式啟動的, 那你可能還需要進一步查看 mongo 的啟動腳本, 比如 vim /etc/init.d/mongo , 來找到其 bin 目錄.
如果上述命令只有一條輸出, 即, 只輸出了 ps -ef | grep mongo, 說明你的 mongo 根本沒有啟動, 也就不用再費勁去找如何用 mongodump 命令備份數(shù)據(jù)了.

重要疑問: mongodump 命令只需要知道端口號和授權(quán)信息就可以了, 也可以用 mongo 的連接 url, 你為什么一定要找到它的 bin 目錄呢. 看上面截圖你都有系統(tǒng)的 root 賬號了, 難道還不知道 mongo 端口號和賬號密碼嗎.

局外人 回答

之前做過少數(shù)據(jù),不知道是不是你要的。參考 https://blog.csdn.net/qq_2564...

爆扎 回答

可以一次執(zhí)行多條。用python來舉個栗子

import MySQLdb as mdb
import sys

conn = mdb.connect(host = 'localhost', user = 'root', passwd = '123456', db = 'test')
 
 cur = conn.cursor()
cur.execute("insert into contact values('key1', 'value1')")
cur.execute("select * from test")
row_num = int(cur.rowcount)
for i in range(row_num):
     row = cur.fetchone()
     print row
 #在數(shù)據(jù)操作完成之后,進行commit,完成數(shù)據(jù)庫的數(shù)據(jù)更新
 conn.commit()
 cur = conn.cursor()
 conn.close()

此問題與MySQL的存儲引擎對事務(wù)的支持有關(guān)。 MySQL中有多種類型的存儲引擎, 例如: MyISAM, InnoDB等。 MyISAM不支持事務(wù)處理, 而InnoDB是事務(wù)型數(shù)據(jù)庫, 支持事務(wù)。比如InnoDB引擎, 所以對數(shù)據(jù)庫數(shù)據(jù)的操作會在事先分配的緩存中進行, 只有在commit之后, 數(shù)據(jù)庫的數(shù)據(jù)才會改變。

萌吟 回答

1.分表. 行分表和列分表.
2.索引. 單索引和組合索引
3.sql語句優(yōu)化.
mysql優(yōu)化就從這三方面優(yōu)化.

九年囚 回答

做一個數(shù)據(jù)接口,然后通過js渲染嘍!不過本身這個東東就是來整靜態(tài)的,你再整一個服務(wù)器給寫數(shù)據(jù)接口,就有點浪費,劃不來

礙你眼 回答

SELECT UserId ,FROM_UNIXTIME(Begin ,'%Y-%m') as month, sum(Duration) as time
FROM tb
GROUP BY UserId,FROM_UNIXTIME(Begin ,'%Y-%m')

半心人 回答

APP可否不需服務(wù)端程序,業(yè)務(wù)邏輯都在客戶端實現(xiàn)?
當(dāng)然是可以的啦
還有啥疑問? 可以再問具體點

巫婆 回答

簡單的答案:不行
內(nèi)存對數(shù)據(jù)庫的作用是不可忽略的,但是你似乎夸大了它的作用。這樣考慮:
假設(shè)你有100w條數(shù)據(jù),需要從中按一定的條件來count。如果沒有索引,你需要進行100w次比較,看其中有哪些是滿足條件的數(shù)據(jù),然后計數(shù)。為了進行這個比較,首先要把數(shù)據(jù)從磁盤上撈出來吧,擴大內(nèi)存確實對這方面有幫助,但是然后呢?比較100w條數(shù)據(jù)是不是要消耗很多時間?CPU是不是也會漲很高?這就是O(n)的時間復(fù)雜度。
如果能完整命中索引,這個過程將大大簡化,因為對數(shù)據(jù)的搜索可以想象為折半查找,其復(fù)雜度為O(log2(n))。兩者的時間消耗大概是這樣(橫坐標數(shù)據(jù)量,縱坐標時間):
https://i.stack.imgur.com/7eh...
clipboard.png

簡單地說,在同樣的硬件條件下:

  • 如果沒有索引支持,數(shù)據(jù)量越多需要的時間越長
  • 而完整命中索引時理論上數(shù)據(jù)量增長并不會造成消耗的時間顯著增長
淡墨 回答

1 確保命中索引。
2 不要一次查太多數(shù)據(jù),分頁查詢。
3 換更好的機器,上SSD。

荒城 回答

這種一般都是用緩存完成的,每次都查性能太差了

1):放入在Redis中
2):放入ServletContext域
吢丕 回答

問題已經(jīng)解決了。
為了禁止body滑動,
在安卓時添加下面代碼,IOS不添加

$(".modal").on("touchmove", function (e) {
   e.preventDefault();
});
薔薇花 回答
  1. 建議你腳本前面加入 source /etc/profile 或 PATH=$PATH
  2. 可以執(zhí)行 /bin/bash -x xxxx.sh 可以清楚的看到腳本執(zhí)行步驟,便于分析。
扯機薄 回答

mysql默認只能本機連接,需要改一下配置文件

擱淺 回答

最簡單的方式,在異地部署每個片的一個復(fù)制集節(jié)點,包括config。等數(shù)據(jù)同步完之后將主節(jié)點切換到新節(jié)點上,然后將其他節(jié)點移出復(fù)制集,這時候你的集群就已經(jīng)到新機房了。