1.一鍵二進(jìn)制安裝mariadb10.5
#!/bin/bash
#定義變量
a=mariadb-10.5.5-linux-systemd-x86_64
b=$a.tar.gz
tar -xf $b -C /usr/local &> /dev/null
id mysql &> /dev/null || useradd -r -u 306 -s /sbin/nologin mysql
mkdir -p /data/mysql;chown mysql:mysql /data/mysql;chmod -R 755 /data/mysql/
cd /usr/local;ln -s $a mysql;chown -R root:root mysql/
echo -e "[mysqld]\ndatadir=/data/mysql\nsocket=/data/mysql/mysql.sock \nlog-error=/data/mysql/mysqld.log\nskip_name_resolve = on\n[client] \nsocket=/data/mysql/mysql.sock" > /etc/my.cnf
cd /usr/local/mysql;./scripts/mariadb-install-db --datadir=/data/mysql --user=mysql >/dev/null
cp /usr/local/mysql/support-files/systemd/mariadb.service /usr/lib/systemd/system/
echo 'PATH=/usr/local/mysql/bin:$PATH' > /etc/profile.d/mysql.sh
ln -s /data/mysql/mysql.sock /tmp/mysql.sock &> /dev/null
systemctl daemon-reload &> /dev/null
systemctl enable --now mariadb &> /dev/null
2.簡(jiǎn)述Event 事件介紹以及它的優(yōu)缺點(diǎn)
Event事件:事件是MySQL在相應(yīng)的時(shí)刻調(diào)用的過程式數(shù)據(jù)庫對(duì)象。一個(gè)事件可調(diào)用一次,也可周期性的啟動(dòng),它由一個(gè)特定的線程來管理的,也就是所謂的“事件調(diào)度器”。
優(yōu)點(diǎn):一些對(duì)數(shù)據(jù)定時(shí)性操作不再依賴外部程序,而直接使用數(shù)據(jù)庫本身提供的功能,可以實(shí)現(xiàn)每秒鐘 執(zhí)行一個(gè)任務(wù),這在一些對(duì)實(shí)時(shí)性要求較高的環(huán)境下就非常實(shí)用。
缺點(diǎn):缺點(diǎn):定時(shí)觸發(fā),不可以直接調(diào)用
3、在 students 表中,查詢年齡大于25歲,且為男性的同學(xué)的名字和年齡
select Name,Age from students where Gender='M' having age > 25;
4、在 students 表中,以 ClassID 為分組依據(jù),查詢顯示每組的平均年齡
select cid,avg(Age) from (select ClassID cid,Age from students where ClassID is not null) as avgage group by cid ;
5、顯示第4題中平均年齡大于30的分組及平均年齡
select * from(select cid,avg(Age) age from (select ClassID cid,Age from students where ClassID is not null)as s group by cid) as x where age >30;