Linux下MySQL安裝和日常維護(1)

eymit發表於2012-08-30
Normal 0 false false false EN-US ZH-CN X-NONELinuxMysql安裝和日常維護(1)



安裝和解除安裝Mysql


一.安裝和配置

1. 下載安裝包

可以到http://www.mysql.com/downloads/下載最新的安裝包,我這裡下載後的檔名為MySQL-5.5.23-1.rhel5.x86_64.tar

2. 解壓縮安裝包

[root@CN01L0301000041 ~]#tar -xvf MySQL-5.5.23-1.rhel5.x86_64.tar

MySQL-client-5.5.23-1.rhel5.x86_64.rpm

MySQL-devel-5.5.23-1.rhel5.x86_64.rpm

MySQL-embedded-5.5.23-1.rhel5.x86_64.rpm

MySQL-server-5.5.23-1.rhel5.x86_64.rpm

MySQL-shared-5.5.23-1.rhel5.x86_64.rpm

MySQL-test-5.5.23-1.rhel5.x86_64.rpm


3. 安裝MySQL

如果發現如下報錯,則需要先刪除當前存在的版本再重新安裝

刪除操作步驟後面有介紹

[root@CN01L0301000041 ~]# rpm -ivh  MySQL-server-5.5.23-1.rhel5.x86_64.rpm

error: Failed dependencies:

        MySQL conflicts with mysql-5.0.77-3.el5.x86_64

        MySQL conflicts with mysql-5.0.77-3.el5.i386

刪除當前版本

[root@CN01L0301000041 ~]# rpm -e  mysql-5.0.77-3.el5.x86_64  --nodeps

[root@CN01L0301000041 ~]# rpm -e  mysql-5.0.77-3.el5.i386  --nodeps


執行以下命令進行安裝

[root@CN01L0301000025 Mysql]# rpm -ivh MySQL-server-5.5.23-1.rhel5.x86_64.rpm

Preparing...                ########################################### [100%]

   1:MySQL-server           ########################################### [100%]


PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !

To do so, start the server, then issue the following commands:


/usr/bin/mysqladmin -u root password 'new-password'

/usr/bin/mysqladmin -u root -h CN01L0301000025 password 'new-password'


Alternatively you can run:

/usr/bin/mysql_secure_installation


which will also give you the option of removing the test

databases and anonymous user created by default.  This is

strongly recommended for production servers.

See the manual for more instructions.

Please report any problems with the /usr/bin/mysqlbug script!

[root@CN01L0301000025 Mysql]#

別忘記安裝客戶端,需要連線到資料庫還需要單獨安裝Mysql客戶端

[root@CN01L0301000041 ~]# rpm -ivh MySQL-client-5.5.23-1.rhel5.x86_64.rpm

Preparing...                ########################################### [100%]

   1:MySQL-client           ########################################### [100%]



安裝完之後可能伺服器沒有啟來,需要把伺服器啟動之後才能做其它操作

[root@jxprod mysql]# /etc/init.d/mysql restart

MySQL server PID file could not be found![FAILED]

Starting MySQL..[  OK 



4. 檢查是否安裝成功

執行mysql命令,有可能會遇到以下錯誤:

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

這有可能是因為/var/lib/mysql的訪問許可權問題,需要執行以下命令:

[root@CN01L0301000041 ~]# chown -R mysql:mysql /var/lib/mysql


服務沒有啟來可能會報如下錯誤

[mysql@jxprod ~]$ mysqladmin -u root password mysql

mysqladmin: connect to server at 'localhost' failed

error: 'Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)'

Check that mysqld is running and that the socket: '/var/lib/mysql/mysql.sock' exists!



5. 修改root密碼和連線限制

預設情況下安裝好mysql資料庫之後root密碼是空的,為了安全起見需要修改root使用者密碼,我這裡設定的密碼為mysql

切換到mysql使用者

-bash-3.2$ mysqladmin -u root password mysql

-bash-3.2$ /usr/bin/mysqladmin -u root -h CN01L0301000025 password  mysql


修改使用root連線的IP

#mysql -uroot -pmysql

mysql>use mysql;

mysql>grant all on *.* to root@'%' identified by "mysql";

mysql>FLUSH PRIVILEGES;

mysql>exit;

6.修改引數和配置檔案

Mysql的引數檔案模板放在/usr/share/mysql/下面,一共有5個配置檔案模板,根據硬體情況拷貝合適的檔案進行調整

[root@CN01L0301000041 ~]# ls -lrt /usr/share/mysql/*.cnf

-rwxr-xr-x 1 root root  2846 Mar 30 15:27 /usr/share/mysql/my-small.cnf

-rwxr-xr-x 1 root root  4682 Mar 30 15:27 /usr/share/mysql/my-medium.cnf

-rwxr-xr-x 1 root root  4671 Mar 30 15:27 /usr/share/mysql/my-large.cnf

-rwxr-xr-x 1 root root 19779 Mar 30 15:27 /usr/share/mysql/my-innodb-heavy-4G.cnf

-rwxr-xr-x 1 root root  4697 Mar 30 15:27 /usr/share/mysql/my-huge.cnf

 

配置低的虛擬可以使用large的配置

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

物理機可以使用 huge的配置

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

 

以上為5.5的配置檔案5.6的只有一個cnf檔案
cp /usr/share/mysql/my-default.cnf /etc/my.cnf

7. 修改引數使表名不區分大小寫

預設情況下表名是區分大小寫的,這對於開發可能會帶來一些麻煩,我們修改引數使它不區分大小寫

使用root修改/etc/my.cnf檔案,在[mysqld]後面新增lower_case_table_names=1 (0表示區分大小寫),再重啟mysql

# The MySQL server

[mysqld]

port            = 3306

socket          = /var/lib/mysql/mysql.sock

skip-external-locking

key_buffer_size = 16K

max_allowed_packet = 1M

table_open_cache = 4

sort_buffer_size = 64K

read_buffer_size = 256K

read_rnd_buffer_size = 256K

net_buffer_length = 2K

thread_stack = 128K

lower_case_table_names=1


-bash-3.2$  /etc/init.d/mysql restart


8.mysql伺服器加入到自啟動中

檢視mysql是否在自動啟動列表中

chkconfig --list |grep mysql

MySQL新增到系統的啟動服務組裡面去

[root@CN01L0301000041 ~]# chkconfig --add mysql

MySQL從啟動服務組裡面刪除。

[root@CN01L0301000041 ~]# chkconfig --del mysql


9.MySQL資料庫的重要目錄

1. 資料庫目錄

/var/lib/mysql/

2. 配置檔案

/usr/share/mysql(mysql.server命令及配置檔案)

3. 相關命令

/usr/bin (mysqladmin mysqldump等命令)

4. 啟動指令碼

/etc/rc.d/init.d/ (啟動指令碼檔案mysql的目錄)


10.連線mysql

可以使用第三方工具在windows上面直接連線,比較流行的有phpMyAdmin, MySQL ODBC Connector, MySQLDumper等,我這裡用的是navicat



二.解除安裝

1、查詢已裝mysql情況

[root@CN01L0301000025 mysql]# rpm -qa|grep -i mysql

MySQL-server-5.5.23-1.rhel5

MySQL-client-5.5.23-1.rhel5

 

2、刪除mysql

刪除命令:rpm -e --nodeps 包名

[root@CN01L0301000025 mysql]# rpm -e MySQL-server-5.5.23-1.rhel5   --nodeps

[root@CN01L0301000025 mysql]# rpm -e MySQL-client-5.5.23-1.rhel5   --nodeps

 

如果報錯可以嘗試rpm -e  --allmatches  --nodeps 包名進行刪除





3、刪除老版本mysql的開發標頭檔案和庫

命令:

rm -fr /usr/lib/mysql

rm -fr /usr/include/mysql

解除安裝後/var/lib/mysql中的資料及/etc/my.cnf不會刪除,如果確定沒用後就手工刪除

rm -f /etc/my.cnf

rm -fr /var/lib/mysql


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/21605631/viewspace-742256/,如需轉載,請註明出處,否則將追究法律責任。

相關文章