linux 環境下安裝mysql

2021-08-26 13:08:14 字數 4525 閱讀 8662

使用yum安裝

rpm -ivh mysql-client-5.5.17-1.linux2.6.x86_64.rpm mysql-server-5.5.17-1.linux2.6.x86_64.rpm

學習了很長時間的linux,有必要做一下整理筆記了,以下是mysql的安裝筆記,和常見的一些使用方法。

因我喜歡除錯優化系統,所以在編譯安裝時使用了一些選項增加程式設計後程式的執行效率,有些可能我理解有錯,希望大家指出.

●安裝mysql

# tar zxvf mysql-4.0.14.tar.gz -c /setup

# cd /setup/mysql-4.0.14

# groupadd mysql

# useradd mysql -g mysql -m -s /bin/false

# ./configure --prefix=/web/mysql 指定安裝目錄

--without-debug 去除debug模式

--with-extra-charsets=gb2312 新增gb2312中文字元支援

--enable-assembler 使用一些字元函式的彙編版本

--without-isam 去掉isam表型別支援 現在很少用了 isam表是一種依賴平台的表

--without-innodb 去掉innodb表支援 innodb是一種支援事務處理的表,適合企業級應用

--with-pthread 強制使用pthread庫(posix執行緒庫)

--enable-thread-safe-client 以執行緒方式編譯客戶端

--with-client-ldflags=-all-static

--with-mysqld-ldflags=-all-static 以純靜態方式編譯服務端和客戶端 --with-raid 啟用raid支援

# make

# make install

# scripts/mysql_install_db 生成mysql使用者資料庫和表檔案

# cp support-files/my-medium.cnf /etc/my.cnf copy配置檔案,有large,medium,small三個環境下的,根據機器效能選擇,如果負荷比較大,可修改裡面的一些變數的記憶體使用值

# cp support-files/mysql.server /etc/init.d/mysqld copy啟動的mysqld檔案

# chmod 700 /etc/init.d/mysqld

# cd /web

# chmod 750 mysql -r

# chgrp mysql mysql -r

# chown mysql mysql/var -r

# cd /web/mysql/libexec

# cp mysqld mysqld.old

# strip mysqld

# chkconfig --add mysqld

# chkconfig --level 345 mysqld on

# service mysqld start

# netstat -atln

看看有沒有3306的埠開啟,如果mysqld不能啟動,看看/web/mysql/var下的出錯日誌,一般都是目錄許可權沒有設定好的問題

# ln -s /web/mysql/bin/mysql /sbin/mysql

# ln -s /web/mysql/bin/mysqladmin /sbin/mysqladmin

# mysqladmin -u root password "youpassword" #設定root帳戶的密碼

# mysql -u root -p

# 輸入你設定的密碼

mysql>use mysql;

mysql>delete from user where password=""; #刪除用於本機匿名連線的空密碼帳號

mysql>flush privileges;

mysql>quit

can』t connect to local mysql server through socket 』/tmp/mysql.sock』(2)

check that mysqld is running and that the socket:』/tmp/mysql.sock』 exists!

首先:用命令:/usr/local/bin/mysqld_safe --user=mysql&連線資料庫,這時系統會自動生成mysql.sock這個檔案。

其次,找到mysql.sock這個檔案,一般在/var/lib/mysql/mysql.sock這個目錄下或/tmp目錄下,如果有提示說can』t connect to local mysql server through socket 』/tmp/mysql.sock』;我們就可以用軟連線的方法解決;

用命令:ln -s /var/lib/mysql/mysql.sock /tmp

這樣就可以啦。

最後,你在用:/usr/local/bin/mysqladmin -u root password 123456 修改資料庫密碼時就不會有問題了

●安裝dbi和dbd for mysql 用於提供perl訪問mysql資料庫的介面規範,請確認你已經安裝了perl,一般預設系統都裝上了

# cd /setup

# tar zxvf dbd-mysql-2.9002.tar.gz -c /setup

# tar zxvf dbi-1.38.tar.gz -c /setup

# cd dbi-1.38

# perl makefile.pl

# make

# make test

# make install

因為有的perl程式中perl的路徑是/usr/local/bin/perl,而紅帽系統預設是/usr/bin/perl,所以最好做乙個連線,保證相容性

# ln -s /usr/bin/perl /usr/local/bin/perl

# cd ../dbd-mysql-2.9002

生成安裝配置檔案需要在perl makefile.pl後新增一些引數,比較麻煩,我們可以通過新增乙個到/web/mysql/bin/mysql_config這個程式的連線解決問題

系統會自動尋找這個命令生成安裝所需要的資料庫引數

# ln -s /web/mysql/bin/mysql_config /sbin/mysql_config

# perl makefile.pl

# make

# make instll (這裡make test我總是執行一半就出錯,但是安裝後是可以執行mysql目錄下的測試指令碼,不知道3.x的mysql如何)

現在你可以執行測試指令碼了,不過速度很慢,掛在後台好了

# perl /web/mysql/sql-bench/run-all-tests --user=root --password="youpassword"

附: ●mysql常見的一些有用的選項和命令

mysqld -----開啟日誌支援

--log

--log-update

--log-long-formart

●mysql

grant all on database.* to user identified by "password" 新建一user使用者,賦予其database資料庫的所有許可權

revoke all on database from user 移除user使用者在database資料庫上的所有許可權

mysql -uroot -p --one-database databasename < file.sql 從file.sql檔案匯入sql語句到databasename這個資料庫裡

●mysqladmin

mysqladmin flush-logs 命令mysqld重新開啟乙個新的日誌檔案,就是清空老日誌檔案,相當於輪迴了

●mysqldump

--add-drop-table 匯出sql語句時新增droptable if exists語句

--quick 快速匯出

--opt 優化選項(推薦)

●myisamchk

檢查表選項

--extend-check 擴充套件檢查

--medium-check 速度比較折中的乙個檢查選項

修復表選項

--recover 修復表檔案

--safe-recover 安全修復表檔案,比--recover要慢

修飾修復表項

--force 強制清除上次的臨時檔案

--quick 只根據素引檔案的內容進行修復

●mysql的管理

可以使用phpmyadmin(需要php的環境支援)和mysqlcc(linux圖形介面支援,windows系統支援)

grant all privileges on *.* to root@主機ip identified by '密碼';

flush privileges; 

Linux環境下安裝MySQL

檢查mysql以及相關rpm包是否有安裝。rpm qa grep i mysql yum y remove 包名 rpm e nodeps mysql 刪除包 rm rf var lib mysql rm rf usr share mysql 掃尾工作rpm安裝 mkdir usr local sr...

Linux下安裝mysql環境。

1 這裡我將mysql安裝在 usr local mysql目錄裡面 mkdir usr local mysql curl o l3 解壓mysql壓縮包 tar xvf mysql 5.7.11 linux glibc2.5 x86 64.tar.gz4 複製壓縮後的檔案到你的制定目錄 mv my...

linux下安裝mysql環境

1.在安裝apache的時候已經檢查了本地沒有安裝centos自帶的mysql,有的話一定要解除安裝掉,否則可能占用埠 3.準備安裝包xftp上傳 上傳前我先遞迴刪除了apache的安裝後的無用包,省的礙事 4.解除安裝原有的5.1版本 rpm qa grep i mysql 發現有自帶的mysql...