數據庫是存儲和管理數據的倉庫,但是數據庫本身不能直接存儲數據,數據存儲在表中。存儲數據必然會用到數據庫服務器,即就是一臺計算機上安裝了數據庫管理程序,如:mysql。
sql語言:用於管理數據庫中的數據,如:存取數據,查詢數據,更新數據。
數據定義語言(Data Definition Language,DDL):定義數據庫,表等。
CREATE,ALTER,DROP語句
數據操作語言(Data Manipulation Language,DML):對數據庫進行添加,修改,刪除操作。
INSERT,UPDATE,DELETE等語句。
數據查詢語言:查詢數據
SELECT.
數據控制語言:控制用戶的訪問權限。
GRANT(增加用戶權限),REVOKE(收回用戶權限),COMMIT(提交事務),ROLLBACK(回滾事物)。
常見的數據庫產品:
Oracle
SQL Server
DB2
*MongoDB
*MySQL(多用戶,多線程)
mysql數據庫的安裝。
1.yum安裝
mysql 軟件可以在 http://www.mysql.com上下載,源碼或是rpm包都可以,由於RHEL6, centos6自帶mysql軟件包,直接yum安裝。
yum install mysql mysql-server -y
rhel7或者centos7默認使用的是mariadb數據庫,本質一樣
2.源碼安裝
軟件包依賴性
yum install -y gcc gcc-c++ make ncurses-devel bison openssl-devel zlib-devel cmake
tar zxvf mysql-5.5.12.tar.gz
cd mysql-5.5.12
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安裝目錄 -DMYSQL_DATADIR=/usr/local/mysql/data \ #數據庫存放目錄 -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock \ #Unix socket 文件路徑 -DWITH_MYISAM_STORAGE_ENGINE=1 \ #安裝myisam存儲引擎 -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #安裝innodb存儲引擎 -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ #安裝archive存儲引擎 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #安裝blackhole存儲引擎 -DWITH_PARTITION_STORAGE_ENGINE=1 \ #安裝數據庫分區 -DENABLED_LOCAL_INFILE=1 \ #允許從本地導入數據 -DWITH_READLINE=1 \ #快捷鍵功能 -DWITH_SSL=yes \ #支持SSL -DDEFAULT_CHARSET=utf8 \ #使用utf8字符 -DDEFAULT_COLLATION=utf8_general_ci \ #校驗字符 -DEXTRA_CHARSETS=all \ #安裝所有擴展字符集 -DMYSQL_TCP_PORT=3306
make && make install
重新編譯時,需要清除舊的對象文件和緩存信息
make clean
rm -f CmakeCache.txt
useradd -M -s /sbin/nologin mysql
cd /usr/local/mysql
cp support-files/my-large.cnf /etc/my.cnf #根據你的主機內存複製mysql配置文件
chown -R mysql.mysql .
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql-- datadir=/usr/local/mysql/data 用戶數據初始化
chown -R root .
chown -R mysql data
cp support-files/mysql.server /etc/init.d/mysqld
/etc/init.d/mysqld start
chkconfig mysqld on 開機自啓動
vi ~/.bash_profile
PATH=$PATH:/usr/local/mysql/bin
source ~/.bash_profile #使之生效
mysql_secure_installation #按提示完成mysql安全設置,生產環境推薦使用
注意:當mysql的版本爲mysql5.7.11時,執行這一步,會生成加密的初始化密碼,具體位 置請留意提示信息。
ln -s /usr/local/mysql/lib /usr/local/mysql/lib64 #不然php編譯的時候找不到mysql的庫文件
mysql最終啓動不了,可能有以下原因:
1.之前的mysql沒有關閉,導致套接字被佔用
2.數據初始化失敗
3.數據目錄位置錯誤
4.數據目錄權限不對