數據(data)是事實或觀察的結果,是對客觀事物的邏輯概括,是用於表示客觀事物的未經加工的的原始素材。
數據能夠是連續的值,好比聲音、圖像,稱爲模擬數據。也能夠是離散的,如符號、文字,稱爲數字數據。
在計算機系統中,數據以二進制信息單元0,1的形式表示。
數據的定義:數據是指對客觀事件進行記錄並能夠鑑別的符號,是對客觀事物的性質、狀態以及相互關係等進行記載的物理符號或這些物理符號的組合。
它是可識別的、抽象的符號。
特色:mysql
高效/安全
種類:c++
RDBMS:關係型數據庫
NoSQL:非關係型數據庫
![]()
產品介紹(熟悉)redis
種類: Oracle、mysql、mssql(SQL Server)、PG(postgresql)
特色: 以多張二維表的方式來存儲,又給多張表創建了必定關係.sql數據安全性要求較高的應用場景
![]()
種類: redis、mongodb、memcache、Hbase、neo4j
特色: 簡單,快,適合作緩存數據庫mongodb針對性能要求較高,數據安全性要求不是過高的場景,通常是配合RDBMS使用的產品
![]()
關係型與非關係型數據庫的對比數據庫
Oracle:緩存
10g 11g 12c 18c
(須要瞭解)
MySQL:安全
5.6 5.7 8.0
(須要熟悉)
補充:bash5.6 ----->5.6.38 5.6.38 ,GA6個月以上的版本
5.7 ----->5.7.17版本以上:5.7.18,5.7.20 , GA6個月以上的版本
GA=穩定版本
MySQL官方下載連接服務器
安裝方便、安裝速度快,沒法定製 (須要瞭解)
不須要安裝,解壓便可使用,不能定製功能 (須要熟悉)
可定製,安裝慢。(須要熟悉)
4個步驟:
1.解壓(tar)
2.生成(./configure)
3.編譯(make)
4.安裝(make install)5.5以前:./configure make make install
5.5以後:cmake gmake
(須要熟悉)
簡單、速度快、可定製,比較複雜 製做時間長
中小企業:以上方式均可以,運維偏向編譯,dba偏向選擇
大型企業:能夠選擇第4種安裝方式
百度雲提取:5.6.38版本
提取碼: ht2b
上傳到服務器上
yum install -y ncurses-devel libaio-devel
安裝cmake代替了以前的./config
yum install cmake -y
useradd -s /sbin/nologin -M mysql id mysql
建立目錄
mkdir -p /application
cd /server/tools/ ls -l mysql-5.6.38.tar.gz # 儘可能去官方下載
tar xf mysql-5.6.38.tar.gz cd mysql-5.6.38
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38 \ -DMYSQL_DATADIR=/application/mysql-5.6.38/data \ -DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EXTRA_CHARSETS=all \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ -DWITH_ZLIB=bundled \ -DWITH_SSL=bundled \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_EMBEDDED_SERVER=1 \ -DENABLE_DOWNLOADS=1 \ -DWITH_DEBUG=0
#程序存放位置 cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.38 \ #數據存放位置 -DMYSQL_DATADIR=/application/mysql-5.6.38/data \ #socket文件存放位置,須要提早建立好tmp文件 -DMYSQL_UNIX_ADDR=/application/mysql-5.6.38/tmp/mysql.sock \ #使用utf8字符集 -DDEFAULT_CHARSET=utf8 \ #校驗規則 -DDEFAULT_COLLATION=utf8_general_ci \ #使用其餘額外的字符集 -DWITH_EXTRA_CHARSETS=all \ #支持的存儲引擎 -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_FEDERATED_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #禁用的存儲引擎 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ #啓用zlib庫支持(zib、gzib相關) -DWITH_ZLIB=bundled \ #啓用SSL庫支持(安全套接層) -DWITH_SSL=bundled \ #啓用本地數據導入支持 -DENABLED_LOCAL_INFILE=1 \ #編譯嵌入式服務器支持 -DWITH_EMBEDDED_SERVER=1 \ # mysql5.6支持了google的c++mock框架了,容許下載,不然會安裝報錯。 -DENABLE_DOWNLOADS=1 \ #禁用debug(默認爲禁用) -DWITH_DEBUG=0
一、作了些預配置
二、影響了編譯後的程序(編譯過程會將cmake指定的配置信息硬編碼到程序文件中)mysqld mysql mysql_install_db mysqldump mysqladmin mysqld_safe 等。
從文件角度來說:
軟件部分------>/application/mysql-5.6.38 #軟件安裝部分
數據部分------>/application/mysql/data #數據存放目錄,使用前須要使用mysql_install_db
初始化,
以5.7.20爲例
一、裝新的軟件5.7.20
二、軟鏈接
三、升級數據
注:生產中通常選擇遷移升級的方式(本身總結)
在升級的的時候注意要作好備份,有回退方案
make && make install
ln -s /application/mysql-5.6.38/ /application/mysql
cd /application/mysql/support-files
cp mysql.server /etc/init.d/mysqld #受權 chmod 700 /etc/init.d/mysqld
cp my-default.cnf /etc/my.cnf
chown -R mysql.mysql /application/mysql-5.6.38/data/
chown -R mysql.mysql /application/mysql
chown -R mysql.mysql /application/mysql-5.6.38/
cd /application/mysql/scripts ./mysql_install_db --user=mysql --basedir=/application/mysql --datadir=/application/mysql/data
mkdir -p /application/mysql/tmp
echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile
/etc/init.d/mysqld start
#端口 netstat -lntup |grep 330 #進程 ps -ef|grep mysql
mysqladmin password 123456 #或者 mysqladmin -uroot -p password 123456 Enter password:#舊密碼