傳統型數據庫:mysql,oracle,db2,sysbase
關係數據庫:本質上二維表
速度慢,和磁盤打交道,對數據安全性,一致性要求高
非關係型數據庫
nosql:
以高效,高性能爲目的,非革命
memcached純內存緩存,鍵值對形式(key-value) stu001-->oldboy
redis 內存加持久化軟件(磁盤),鍵值對形式(key-value) stu001-->oldboy,類型更多
mysql安裝
軟件的安裝方式:
1.yum、rpm簡單,快,無法定製。
2.編譯安裝,./configure;make;make install 複雜,速度慢,可定製
針對mysql,編譯安裝, ./cmake;gmake;gmake install
3.二進制包
解壓就能用,簡單快,不好定製
1初始化
/application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql###(指定安裝目錄 配置文件目錄 用戶)
目的是在/application/mysql/data/下生成mysql、test等文件(tmp權限需777)
重新初始化需要刪除/application/mysql/data/*
2授權mysql管理數據庫文件
chown -R mysql:mysql /application/mysql/
3tmp目錄調整權限777
ls -ld /tmp/
4生成mysql配置文件
cp /application/mysql/support-files/my-small.cnf /etc/my.cnf
5編輯啓動腳本/usr/local/mysql 爲 /application/mysql###( /application/mysql/bin/mysqld_safe這個腳本)
sed -i 's#/usr/local/mysql#/application/mysql#g' /application/mysql/bin/mysqld_safe
6.啓動
/application/mysql/bin/mysqld_safe &
7.配置環境變量
a.vi /etc/profile
PATH="/application/mysql/bin:$PATH"##放進去
source /etc/profile##讓他生效
b.cp /application/mysql/bin/* /usr/local/sbin/
設置人性化啓動
cp support-files/mysql.server /etc/init.d/mysqld
sed -i 's#/usr/local/mysql#/application/mysql#g' /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
killall mysqld
lsof -i :3306
/etc/init.d/mysqld start
/etc/init.d/mysqld restart
vim /etc/rc.local
/etc/init.d/mysqld start
安全優化:
mysqladmin -uroot password "123456"##創建用戶並設置密碼
mysqladmin -uroot -p123456 password "123456"##更改密碼
mysql -uroot -p123456##登錄##mysql -uroot -p##安全登錄
show databases;##查所有庫 ls
select database();##查看當前的庫pwd
drop database test;##刪庫
select user,host from mysql.user;##查詢用戶,主機從user數據庫裏
drop user 'root'@'::1';##刪除用戶root,::1主機
grant all on *.* to 'root'@localhost identified by '123456' with grant option;flush privileges;
##添加root localhost用戶
大寫英文要用delete刪除
delete from mysql.user=''and host='Mysql';
flush privileges;##刷新數據