Linux Mysql 5.5 X64位安裝,個人實踐

mysql 5.5版本和5.0版本的安裝不一樣。我之前寫過的一篇文章是5.0安裝的。

5.5版本的安裝幾乎都是rpm安裝。mysql官網也推薦用rpm安裝。

這裏要下載2個rpm包一個是服務端,一個是客戶端。

服務端:MySQL-server-5.5.44-1.linux2.6.x86_64.rpm 

客戶端:MySQL-client-5.5.44-1.linux2.6.x86_64.rpm

安裝命令

# rpm -ivh MySQL-server-5.5.44-1.linux2.6.x86_64.rpm 

# rpm -ivh MySQL-client-5.5.44-1.linux2.6.x86_64.rpm

================================================

2018-5-11更新(安裝5.6)

使用阿里雲centos7.4版本安裝mysql5.6是,需要先使用如下命令,否則會報錯

yum install libaio

然後查詢mariadb,並刪除

rpm -qa|grep mariadb

 rpm -e mariadb-libs-* --nodeps

如果出現如下異常: 
FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install_db: 
Data::Dumper 
解決方案: 

]# yum install -y perl-Module-Install.noarch

如果報錯,打開系統日誌提示: 

Fatal error: Can’t open and lock privilege tables: Table ‘mysql.user’ doesn’t existFor more information, see Help and Support Center at

說明Mysql需要初始化

mysqld --initialize 

如果報錯

Please read "Security" section of the manual to find out how to run mysqld as root

需要把/usr/share/mysql/my-default.cnf複製到/etc/my.cnf

然後/etc/my.cnf中加入 user=mysql 即可

===============================================================================

啓動前先要初始化數據庫

./usr/bin/mysql_install_db

如果報錯Can't find file: './mysql/plugin.frm'

解決方法:

進入plugin.frm所在目錄,我的是在

/var/lib/mysql/mysql

ls -l

發現所有文件的權限不知何故都變成root了,執行下面命令,修改權限爲mysql

chown mysql.mysql *

==========================================================


安裝完後,

複製並修改my.cnf

複製/usr/share/mysql/my-medimu.cnf到/etc/my.cnf

my.cnf裏面增加內容

[client]下面增加

 default-character-set=utf8

[mysqld]下面增加

character_set_server=utf8
collation-server=utf8_general_ci
lower_case_table_names=1
character_set_client=utf8

[mysql]下面增加

default-character-set = utf8

==========================

這樣就算配置完成了

直接打命令

#service mysql start

這樣就可以啓動mysql

PS:1

安裝過程中,我在my.cnf配置上出了問題,mysql啓動不起來

錯誤是

The server quit without updating PID file [FAILED]b....

網上有很多種解決辦法,但是在我這裏都不能解決。困擾了一天

後來我自己查看mysql日誌 /var/lib/mysql/*****.err  ---這裏.err結尾的是錯誤日誌,前面的*在不同服務器上是不一樣的

日誌裏面有這麼2行

150610 10:28:44 [ERROR] /usr/sbin/mysqld: unknown variable 'default-character-set=utf8'
150610 10:28:44 [ERROR] Aborting

看到日誌後我突然想起,my.cnf裏面的配置我是直接copy網上的,這次我把my.cnf重新配置了一遍,代碼一個一個手動敲進去。

保存後重新啓動mysql,OK了。

看來還是不能盲目迷信百度的東西啊,還得靠自己動手豐衣足食啊。

PS:1

解決過程中學到的東西

使用如下命令創建一個用戶名和密碼分別爲"myuser"和"mypassword"的用戶。


mysql> CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';

例如,爲所有數據庫/表賦予 CREATE 和 INSERT 權限:

mysql> GRANT ALL ON *.* TO 'myuser'@'localhost'; -----------第一個*表示數據庫名,第二個*表示表名,*代表所有。localhost表示本地訪問,%表示所有外網訪問,也可以換成具體ip,那就是指定IP訪問

  • ALL: 所有可用的權限
  • CREATE: 創建庫、表和索引
  • LOCK_TABLES: 鎖定表
  • ALTER: 修改表
  • DELETE: 刪除表
  • INSERT: 插入表或列
  • SELECT: 檢索表或列的數據
  • CREATE_VIEW: 創建視圖
  • SHOW_DATABASES: 列出數據庫
  • DROP: 刪除庫、表和視圖

參考http://www.linuxidc.com/Linux/2015-03/114803.htm

===========================================================

--查看數據庫的字符集 
show variables like 'character\_set\_%'; 
show variables like 'collation_%';

============================================================

mysql安裝後默認目錄

1、數據庫目錄
   /var/lib/mysql/
2、配置文件
    /usr/share/mysql   (mysql.server命令及配置文件)
3、相關命令
   /usr/bin   (mysqladmin mysqldump等命令)
4、啓動腳本
   /etc/rc.d/init.d/   (啓動腳本文件mysql的目錄)
============================================================

my-small.cnf 

在服務器或者VPS內存小於64MB並且只是偶爾使用mysql的情況下建議使用使用該選項文件。使用這個選項文件,mysql不能應付頻繁的使用,但不會使服務器或者VPS性能下降。

這個配置下,緩衝大小設置的 比較低,sort_buffer只有64K,key_buffer只有16K,table_cache只有4K。


my-medium.cnf

和較小的配置選項文件一樣,如果mysql不是系統中運行的唯一重要程序,這個配置文件適用於內存在64MB左右但是mysql適用相對頻繁一些的服務器或者VPS。

這個配置下,key_buffer爲16M,mysql服務器的sort_buffer爲512K,table_cache爲64K(允許更多的併發線程),net_buffer_length提高到了8K。


my-large.cnf

這個配置示範文件適用於專門提供mysql服務的服務器或者VPS,適用於內存爲512MB的系統。
這個配置中,服務器的緩衝允許更多的活躍線程和更好的排序性能,文件把嘉定的512M內存分配給了key_buffer變量256M,sort_buffer爲1M,table_cache爲256,允許更多的並行用戶,最大256個活動線程。


my-huge.cnf
此配置也同樣適用於服務器或者VPS主要爲mysql用途的,適用於內存爲1-2GB的服務器或者VPS。
這個配置中,sort_buffer排序緩存增加到了2M,key_buffer爲384M,table_cache爲512.


my-innodb-heavy-4G.cnf

這個示範配置文件適合內存爲4G或以上的系統,它用來提供沒有很多連接(使用InnoDB儲存引擎)的複雜查詢,該配置文件中的innodb選項給mysql設置了一個2G的緩衝區。


PS3

在mysql官網下載的選擇mysql需要的系統時,下面的下載內容有時候不會異步更新。

比如我選擇Linux Generic是,下面的下載列表應該是異步更新到Linux版本的下載列表,而不是停留在默認的Window下載列表,後來我爲了訪問google修改了hosts文件後。再訪問mysql官網下載頁面,居然可以異步顯示下載列表了。不知道是不是這個原因。不然剛開始的時候,爲了下載個mysql。搞了半天就是下載不下來,後來能下載了,就採用迅雷下載。速度槓槓的。

參考文章

1、http://www.cnblogs.com/sunson/articles/2172086.html

2、http://www.cnblogs.com/xiaochaohuashengmi/archive/2011/10/18/2216087.html

3、http://blog.rekfan.com/articles/186.html


=========================================================================================

2016-5-17編輯

1、檢查是否已安裝MySQL

rpm -qa | grep -i mysql

如果有會出現類似下面的內容

MySQL-server-5.0.22-0.i386

MySQL-client-5.0.22-0.i386


2、刪除已安裝mysql

rpm -ev MySQL-server-5.0.22-0.i386

rpm -ev MySQL-client-5.0.22-0.i386

如果刪除不成功則先要刪除依賴項

PS:我今天刪除的時候出現瞭如下內容

error: Failed dependencies:
libmysqlclient.so.16()(64bit) is needed by (installed) postfix-2:2.6.6-6.el6_5.x86_64
libmysqlclient.so.16(libmysqlclient_16)(64bit) is needed by (installed) postfix-2:2.6.6-6.el6_5.x86_64
mysql-libs is needed by (installed) postfix-2:2.6.6-6.el6_5.x86_64

解決辦法:

rpm -e --nodeps mysql-libs-5.1.73-3.el6_5.x86_64

3、linux下創建數據庫

Linux代碼  
GBK: create database test2 DEFAULT CHARACTER SET gbk COLLATE gbk_chinese_ci;  
  
UTF8: CREATE DATABASE `test2` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;  
flush privileges;

發佈了58 篇原創文章 · 獲贊 23 · 訪問量 19萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章