數(shù)據(jù)是指對(duì)客觀事件進(jìn)行記錄并可以鑒別的符號(hào),是對(duì)客觀事物的性質(zhì)、狀態(tài)以及相互關(guān)系等進(jìn)行記載的物理符號(hào)或這些物理符號(hào)的組合。它是可識(shí)別的、抽象的符號(hào)。
讓客戶(hù)滿(mǎn)意是我們工作的目標(biāo),不斷超越客戶(hù)的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛(ài)。我們立志把好的技術(shù)通過(guò)有效、簡(jiǎn)單的方式提供給客戶(hù),將通過(guò)不懈努力成為客戶(hù)在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名注冊(cè)、網(wǎng)站空間、營(yíng)銷(xiāo)軟件、網(wǎng)站建設(shè)、坡頭網(wǎng)站維護(hù)、網(wǎng)站推廣。
優(yōu)點(diǎn):
強(qiáng)大的查詢(xún)功能
強(qiáng)一致性
二級(jí)索引
RDBMS:Oracle、MySQL、mssql(SQL Server)、PG(postgresql)
適用場(chǎng)景:數(shù)據(jù)安全性要求較高的應(yīng)用場(chǎng)景
優(yōu)點(diǎn):
靈活模式
擴(kuò)展性
性能
NOSQL:redis、MongoDB、memcache、Hbase、neo4j
適用場(chǎng)景:針對(duì)性能要求較高,數(shù)據(jù)安全性要求不是太高的場(chǎng)景,一般是配合RDBMS使用的產(chǎn)品
1、 rpm或yum安裝:安裝方便、安裝速度快、無(wú)法定制
2、 二進(jìn)制:不需要安裝,解壓即可使用,不能定制功能
3、 編譯安裝:可定制,安裝速度慢 (5.5版本之前:./configure make make install | 5.5之后:cmake gmake)
系統(tǒng)版本:Linux Centos-6.9 2.6.32-696.23.1.el6.x86_64
MySQL軟件版本:5.6.38
IP地址與主機(jī)名:10.0.0.51 db01
https://downloads.mysql.com/archives/community/ #官網(wǎng)下載
(1) 安裝依賴(lài)包:
yum install -y ncurses-devel libaio-devel gcc-c++ gcc ncurses-devel freeglut-devel
(2) 安裝cmake
yum install -y cmake
(3) 創(chuàng)建mysql用戶(hù),用來(lái)管理mysql
useradd -s /sbin/nologin -M mysql
(4) 解壓軟件包
tar xf mysql-5.6.38.tar.gz
(5) 開(kāi)始編譯安裝
cd mysql-5.6.38????????????? #<====進(jìn)入解壓后的目錄
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
make && make install #<======編譯安裝
#===================================
Cmake 做了什么?
1、做了些預(yù)配置
2、影響了編譯后的程序(編譯過(guò)程會(huì)將cmake指定的配置信息硬編碼到程序文件中)
mysqld
mysql
mysql_install_db
mysqldump
mysqladmin
mysqld_safe
等。
#=====================================
ln -s /application/mysql-5.6.38/ /application/mysql????????? #<====創(chuàng)建安裝目錄的軟鏈接
cp support-files/my*.cnf /etc/my.cnf???????? #<===復(fù)制my.conf到etc目錄下
#==================
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql #<=====初始化數(shù)據(jù)庫(kù)
#==================
chown -R mysql.mysql /application/mysql/ #<====修改軟件路徑歸屬
cp support-files/mysql.server /etc/init.d/mysqld #<===拷貝啟動(dòng)腳本到Sys-v模式目錄
chmod 700 /etc/init.d/mysqld
/etc/init.d/mysqld start #<======啟動(dòng)數(shù)據(jù)庫(kù)
netstat -lntup|grep 3306 #<======檢查服務(wù)端口號(hào)
echo 'PATH=/application/mysql/bin/:$PATH' >>/etc/profile #<=====添加環(huán)境變量
source /etc/profile
mysql??? #【回車(chē)】#啟動(dòng)mysql數(shù)據(jù)庫(kù),首次啟動(dòng)沒(méi)有密碼
++++++++++++++++++++++++++++++拓展部分+++++++++++++++++++++++++++++++++++++
修改密碼:
1.例如你的 root用戶(hù)現(xiàn)在沒(méi)有密碼,你希望的密碼修改為123456,那么命令是:
mysqladmin -u root password 123456
2.如果你的root現(xiàn)在有密碼了(123456),那么修改密碼為abcdef的命令是:
mysqladmin -u root -p password abcdef
注意,命令回車(chē)后會(huì)問(wèn)你舊密碼,輸入舊密碼123456之后命令完成,密碼修改成功。
3.如果你的root現(xiàn)在有密碼了(123456),那么修改密碼為abcdef的命令是:
mysqladmin -u root -p123456 password abcdef (注意-p 不要和后面的密碼分
開(kāi)寫(xiě),要寫(xiě)在一起,不然會(huì)出錯(cuò),錯(cuò)誤如下所示)
4.使用phpmyadmin,這是最簡(jiǎn)單的了,修改mysql庫(kù)的user表,
不過(guò)別忘了使用PASSWORD函數(shù)。
忘記密碼:
下面我們提供了6種不同的修改mysql root用戶(hù)的密碼,與增加mysql用戶(hù)的方法。
方法一
使用phpmyadmin,這是最簡(jiǎn)單的了,修改mysql庫(kù)的user表,
不過(guò)別忘了使用PASSWORD函數(shù)。
方法二
使用mysqladmin,這是前面聲明的一個(gè)特例。
mysqladmin -u root -p password mypasswd
輸入這個(gè)命令后,需要輸入root的原密碼,然后root的密碼將改為mypasswd。
把命令里的root改為你的用戶(hù)名,你就可以改你自己的密碼了。
當(dāng)然如果你的mysqladmin連接不上mysql server,或者你沒(méi)有辦法執(zhí)行mysqladmin,
那么這種方法就是無(wú)效的。
而且mysqladmin無(wú)法把密碼清空。
下面的方法都在mysql提示符下使用,且必須有mysql的root權(quán)限:
方法三
mysql> INSERT INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
確切地說(shuō)這是在增加一個(gè)用戶(hù),用戶(hù)名為jeffrey,密碼為biscuit。
在《mysql中文參考手冊(cè)》里有這個(gè)例子,所以我也就寫(xiě)出來(lái)了。
注意要使用PASSWORD函數(shù),然后還要使用FLUSH PRIVILEGES。
方法四
和方法三一樣,只是使用了REPLACE語(yǔ)句
mysql> REPLACE INTO mysql.user (Host,User,Password)
VALUES('%','jeffrey',PASSWORD('biscuit'));
mysql> FLUSH PRIVILEGES
方法五
使用SET PASSWORD語(yǔ)句,
mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD('biscuit');
擬也必須使用PASSWORD()函數(shù),
但是不需要使用FLUSH PRIVILEGES。
方法六
使用GRANT ... IDENTIFIED BY語(yǔ)句
mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY 'biscuit';
這里PASSWORD()函數(shù)是不必要的,也不需要使用FLUSH PRIVILEGES。
注意: PASSWORD() [不是]以在Unix口令加密的同樣方法施行口令加密。
MySQL 忘記口令的解決辦法
如果 MySQL 正在運(yùn)行,首先殺之: killall -TERM mysqld。
啟動(dòng) MySQL :bin/safe_mysqld --skip-grant-tables &
就可以不需要密碼就進(jìn)入 MySQL 了。
然后就是
>use mysql
>update user set password=password("new_pass") where user="root";
>flush privileges;
重新殺 MySQL ,用正常方法啟動(dòng) MySQL 。
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++