MySQL高級學習筆記(一):mysql簡介、mysq linux版的安裝(mysql 5.5)

MySQL簡介

概述

MySQL 是一個關係型數據庫管理系統,由瑞典 MySQL AB 公司開發,目前屬於 Oracle 公司。
MySQL 是一種關聯數據庫管理系統,將數據保存在不一樣的表中,而不是將全部數據放在一個大倉庫內,這樣就增長了速度並提升了靈活性。java

Mysql 是開源的,因此你不須要支付額外的費用。
Mysql 是能夠定製的,採用了 GPL 協議,你能夠修改源碼來開發本身的 Mysql 系統。node

Mysql 支持大型的數據庫。能夠處理擁有上千萬條記錄的大型數據庫。
MySQL 使用標準的 SQL 數據語言形式。
Mysql 能夠容許於多個系統上,而且支持多種語言。這些編程語言包括 C 、 C++ 、 Python 、 Java 、 Perl 、 PHP 、 Eiffel 、 Ruby 和 Tcl 等。
MySQL 支持大型數據庫,支持 5000 萬條記錄的數據倉庫, 32 位系統表文件最大可支持 4GB , 64 位系統支持最大的表文件爲 8TB 。python

mysql高手是怎樣煉成的

數據庫內部結構和原理
數據庫建模優化
數據庫索引創建
SQL語句優化
SQL編程
mysql服務器的安裝配置
數據庫的性能監控分析與系統優化
各類參數常量設定
主從複製
分佈式架構搭建、垂直切割和水平切割
數據遷移
容災備份和恢復
shell或python等腳本語言開發
對開源數據庫進行二次開發mysql

mysq linux版的安裝(mysql 5.5)

下載地址

官網下載地址:http://dev.mysql.com/downloads/mysql/

在這裏插入圖片描述
在這裏插入圖片描述linux

拷貝&解壓縮

檢查工做

檢查當前系統是否安裝過mysql

執行安裝命令前,先執行查詢命令
rpm -qa|grep mysql
若是存在 mysql-libs 的舊版本包以下:
在這裏插入圖片描述
請先執行卸載命令: rpm -e --nodeps mysql-libsweb

檢查/tmp文件夾權限

因爲mysql安裝過程當中,會經過mysql用戶在/tmp目錄下新建tmp_db文件,因此請給/tmp較大的權限
執行 :chmod -R 777 /tmpsql

安裝

在 mysql 的安裝文件目錄下執行:
rpm -ivh MySQL-server-5.5.54-1.linux2.6.x86_64.rpm
rpm -ivh MySQL-client-5.5.54-1.linux2.6.x86_64.rpmshell

查看MySQL安裝版本

或者能夠執行 mysqladmin --version命令,相似java -version若是打出消息,即爲成功。數據庫

在這裏插入圖片描述
經過vim 查看 mysql組 和mysql組編程

mysql服務的啓+停

啓動:
在這裏插入圖片描述

關閉:
在這裏插入圖片描述

首次登陸

安裝完成後會提示出以下的提示:
在mysql首次登陸前要給 root 帳號設置密碼
在這裏插入圖片描述

啓動服務後,執行命令
/usr/bin/mysqladmin -u root password ‘123123’
在這裏插入圖片描述

而後經過 mysql -uroot -p123123進行登陸
在這裏插入圖片描述

MySQL的安裝位置

在linux下查看安裝目錄 ps -ef|grep mysql

參數 路徑 解釋 備註
–basedir /usr/bin 相關命令目錄 mysqladmin mysqldump等命令
–datadir /var/lib/mysql/ mysql數據庫文件的存放路徑
–plugin-dir /usr/lib64/mysql/plugin mysql插件存放路徑
–log-error /var/lib/mysql/jack.atguigu.err mysql錯誤日誌路徑
–pid-file /var/lib/mysql/jack.atguigu.pid 進程pid文件
–socket /var/lib/mysql/mysql.sock 本地鏈接時用的unix套接字文件
/usr/share/mysql 配置文件目錄 mysql腳本及配置文件
/etc/init.d/mysql 服務啓停相關腳本

在 linux 下查看安裝目錄 ps -ef|grep mysql
在這裏插入圖片描述

自啓動mysql服務

在這裏插入圖片描述

修改配置文件位置

由於未來配置主從配置,集羣之類的,容易出現問題,因此,保存一份默認的配置文件,修改默認配置文件的位置

拷貝:
在這裏插入圖片描述
注意:
當前的5.5版本

cp   /usr/share/mysql/my-huge.cnf    /etc/my.cnf

5.6版本

cp   /usr/share/mysql/my-default.cnf    /etc/my.cnf

/etc/my.cnf是默認讀取的配置文件,剛安裝的時候,是不會有這個文件的,沒有就會用默認的,有的話就用/etc/my.cnf

修改字符集問題

嘗試插入輸入:

insert into user values(2,'張三');
select * from user;

+------+--------+
|id	   |name	|
+------+--------+
|1     |z3		|
|2     |??		|
+------+--------+

緣由是字符集問題
1 查 看字符集
show variables like ‘character%’;
show variables like ‘%char%’;
看看出現的結果:
在這裏插入圖片描述
character_set_database和character_set_server都是 latinl(拉丁)

默認的是客戶端和服務器都用了latin1,所 以會亂碼。

2 修改my.cnf
在/usr/share/mysql/ 中找到my.cnf的配置文件,
拷貝其中的my-huge.cnf 到 /etc/ 並命名爲my.cnf
mysql 優先選中 /etc/ 下的配置文件
而後修改my.cnf:
[client]
default-character-set=utf8
[mysqld]
character_set_server=utf8
character_set_client=utf8
collation-server=utf8_general_ci
[mysql]
default-character-set=utf8

在這裏插入圖片描述

三、從新啓動mysql

service mysql stop
service mysql start
user db01 
insert into user values(2,'張三3');
select * from user;
+------+--------+
|id	   |name	|
+------+--------+
|1     |z3		|
|2     |??		|
|2     |??3		|
+------+--------+

由於我是在原庫以後修改的字符集,因此原來的還不是utf-8。
結論:
原庫的設定不會發生變化,參數修改只對新建的數據庫生效

四、已生成的庫表字符集如何變動 修改數據庫的字符集 mysql> alter database mytest character set ‘utf8’; 修改數據表的字符集 mysql> alter table user convert to character set ‘utf8’; 可是原有的數據若是是用非’utf8’編碼的話,數據自己不會發生改變。

相關文章
相關標籤/搜索