linux編譯安裝MySQL 5.1

原文出自:http://www.huxun360.com/view_blog/35mysql

數據庫Mysql安裝c++

1.首先下載安裝包並使用命令tar解壓:sql

tar  –zxvf  mysql-5.1.30.tar.gz數據庫

使用cd命令進入解壓後的目錄安全

./configure 以前要make clean 服務器


註釋:在執行「make clean」 失敗時,提示錯誤checking for termcap functions library... configure: error: Nocurses/termcap library found 。ide

則在執行./configure命令,執行命令代碼爲:測試

./configure--prefix=/usr/share/mysql/ -with-charset=utf8 -with-extra-charsets=all with-named-curses-libs=/usr/lib/libncursesw.so.5(最後一段命令能夠省略)this


出現錯誤:No curses/termcap library found  或者seethe install manual chapter in the reference spa

yum –y installgcc    yum install ncurses-devel    


2.配置和編譯安裝環境

2.1配置安裝環境

命令格式:./configure   –prefix=安裝路徑

--prefix=/usr/local/mysql/ 安裝到此目錄下

個人操做:   ./configure  --prefix=/usr/local/mysql/

-with-charset=gbk -with-extra-charsets=all 加入解決中文亂碼

./configure --prefix=/usr/share/mysql/-with-charset=gbk -with-extra-charsets=all


參數: --prefix= 指軟件安裝的路徑


2.2編譯安裝環境

命令格式:make

執行make命令時出現錯誤:exec g++ not found

安裝gcc -c++

從新執行上一命令(config)


等待……….時間太長了

2.3安裝

命令格式:makeinstall


3.建立MySQL相關用戶

使用命令groupadd建立用戶組

命令格式:groupaddmysql


使用命令useradd建立用戶並分配到mysql組中

命令格式:useradd g  mysql  mysql


使用命令passwd修改用戶密碼

命令格式:passwdmysql


個人密碼:  password

4.配置MySQL數據庫環境

4.1.使用命令cp拷貝示例配置文件到系統環境

命令格式:此步驟在解壓的目錄

cp   ./support-files/my-medium.cnf   /etc/my.cnf


拷貝目標文件my.cnf必需要這樣命名,該名稱爲數據庫默認配置文件。

4.2.使用命令VI編輯配置文件

命令格式: vi      /etc/my.cnf    


查找 /skip  /後面爲查找內容


查找skip-federated選項是否打開,把它註釋掉。


並保存退出

5.初始化系統數據庫

5.1.使用命令cd進入安裝目錄也就是上面的/user/local/mysql

命令格式:cd/$MYSQL_HOME

若是使用參數—prefix則進入參數指定路徑,不然進入/usr/local默認路徑查找


5.2.使用命令chown修改安裝目錄權限

命令格式:chown –Rmysql:root .     .表明在當前目錄及其下面的內容


5.3.初始化系統數據庫

命令格式:bin/mysql_install_db--user=mysql


顯示一些幫助信息


6.修改數據庫安全性

6.1修改數據庫文件夾權限

命令格式:chown R mysql var

var爲數據庫默認的數據文件夾,文件夾名稱以實際狀況而定


6.2啓動服務並修改root用戶密碼命令格式:

bin/mysqld_safe user=mysql &


bin/mysqladmin u root password ‘’


下面是一些修改命令,也可不看

bin/mysqladmin u root h $hostname password ‘’

PLEASE REMEMBER TO SET A PASSWORD FOR THEMySQL root USER !

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

修改root的登入密碼

/usr/local/mysql/bin/mysqladmin -u rootpassword 'new-password‘

修改test密碼

/usr/local/mysql/bin/mysqladmin -u root -htest password 'new-password'

You can start the MySQL daemon with:

cd /usr/local/mysql ;/usr/local/mysql/bin/mysqld_safe &

7.測試數據庫

命令格式:bin/mysqlu root p


密碼爲空

Mysql語句:show databases;


退出 ctrl+c  bye 或者exit 依環境的不一樣而定

下面的一直沒有用到

使外部客戶端鏈接到MySQL,先登陸到MySQL服務器端:

格式:grant 權限 on 數據庫對象 to 用戶

mysql>grant all on *.* to ‘root’@’%’identified by ‘root密碼

1.拷貝數據庫啓動腳本到安裝目錄

命令格式:

cp /MySQL-version-OS/support-files/mysql.server /$MySQL_HOME/bin/mysql.server


個人操做:

cp  /root/download/mysql-5.1.30/support-files/mysql.server  /usr/local/mysql/bin/mysql.server

2.修改執行權限

命令格式:chmod 755/$MySQL_HOME/bin/mysql.server


命令解釋:chmod是Linux下設置文件權限的命令,後面的數字表示不一樣用戶或用戶組的權限。

通常是三個數字:
第一個數字表示文件全部者的權限
第二個數字表示與文件全部者同屬一個用戶組的其餘用戶的權限
第三個數字表示其它用戶組的權限。

權限分爲三種:讀(r=4),寫(w=2),執行 (x=1) 。 綜合起來還有可讀可執行(rx=5=4+1)、可讀可寫(rw=6=4+2)、可讀可寫可執行(rwx=7=4+2+1)。

因此,chmod 755 設置用戶的權限爲:

1.文件全部者可讀可寫可執行
2.與文件全部者同屬一個用戶組的其餘用戶可讀可執行
3.其它用戶組可讀可執行

     chmod 4755與chmod 755 的區別在於開頭多了一位,這個4表示其餘用戶執行文件時,具備與全部者至關的權限。

例如:root用戶建立了一個上網認證程序netlogin,若是其餘用戶要上網也要用到這個程序,那就須要root用戶運行chmod 755 netlogin命令使其餘用戶也能運行netlogin。

可是netlogin執行時可能須要訪問一些只有root用戶纔有權訪問的文件,那麼其餘用戶執行netlogin時可能由於權限不夠仍是不能上網。

這種狀況下,就能夠用 chmod 4755 netlogin 設置其餘用戶在執行netlogin也有root用戶的權限,從而順利上網。


3.使用方法

mysql.server start|stop|restart


/etc/profile                echo $PATH

4.修改環境變量mysql.server在何地都能執行

vi /etc/profile


MYSQL_HOME=/usr/local/mysql

PATH=$PATH:$MYSQL_HOME/bin

export MYSQL_HOME PATH  注意這裏export 必須爲小寫


source /etc/profile 重啓配好環境變量就能夠再任意位置找到

命令解釋:Source命令執行完後,計算機不用重啓就可加載配置。重啓計算機命令爲reboot

例如:mysql.serverstart 啓動mysql在任何位置


我回到root目錄下測試了一下

環境變量的配置: 在任何一個目錄下面都能進去

netstat -anp |more  端口號:3306   mysql的端口號

查看端口號命令:showvariables like ‘port’


到此安裝完畢了

在任意位置就能使用mysql -u root -p 進行登入mysql


數據庫字符修改:

Mysql>Alter database  test character set ‘UTF-8’

庫文件導入:

Mysql>source sql文件路徑






系統字符集修改:/etc/sysconfig/i18n 文件裏面的內容

LANG="zh_CN.GB18030"

LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"

SUPPORTED="zh_CN.UTF-8:zh_CN:zh:en_US.UTF-8:en_US:en"

SYSFONT="lat0-sun16



解決遠程鏈接mysql錯誤1130代碼的方法
今天在用遠程鏈接Mysql服務器的數據庫,無論怎麼弄都是鏈接不到,錯誤代碼是1130,ERROR 1130: Host 192.168.2.159 is not allowedto connect to this MySQL server
猜測是沒法給遠程鏈接的用戶權限問題。結果這樣子操做mysql庫,便可解決。在本機登入mysql後,更改 「mysql」 數據庫裏的 「user」 表裏的 「host」 項,從」localhost」改稱'%'。。
mysql -u root -p
mysql>use mysql;
mysql>select 'host' from user where user='root';
mysql>update user set host = '%' where user ='root';
mysql>flush privileges;
mysql>select 'host'   from user where user='root';
第一句是以權限用戶root登陸
第二句:選擇mysql庫
第三句:查看mysql庫中的user表的host值(便可進行鏈接訪問的主機/IP名稱)
第四句:修改host值(以通配符%的內容增長主機/IP地址),固然也能夠直接增長IP地址
第五句:刷新MySQL的系統權限相關表
第六句:再從新查看user表時,有修改。。
重起mysql服務便可完成。
============================
1、經過MySQL-Front或mysqladministrator鏈接mysql的時候發生的這個錯誤
ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server
說明所鏈接的用戶賬號沒有遠程鏈接的權限,只能在本機(localhost)登陸。
需更改 mysql 數據庫裏的 user表裏的 host項
把localhost改稱%
首先按下面的步驟登陸Mysql服務器
登陸mysql須要切換到dos下的mysql的bin目錄,進行以下操做:
語法格式:mysql -h host_name -u user_name -ppassword   (本機的話-h 和host_name可省)
例如:
C:\program files\mysql\mysql server 5.0\bin>mysql -u root -p
Enter password:******
先輸入用戶名和密碼登錄要求(-p),回車後等出現"Enterpassword:",再輸入密碼回車,這樣就能夠
成功登錄mysql,不然將會登錄失敗。
登錄成功後會顯示以下信息及Mysql標識符:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 5.0.1-nt
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
標識符"mysql>",當你看到
......

相關文章
相關標籤/搜索