ubuntu 13.04 安裝(zhuāng)mysql數據庫教程
Ubuntu是一個(gè)流行的(de)Linux操作係統,基於Debian發(fā)行版和GNOME桌麵環(huán)境,和其他Linux發行版相比,Ubuntu非常易(yì)用,和Windows相容(róng)性(xìng)很好(hǎo),非(fēi)常適(shì)合Windows用戶(hù)的遷移(yí),預裝了大量常用軟件,中文版的功能也較全,支持(chí)拚(pīn)音輸入法,預裝了firefox、Open Office、多媒體播放(fàng)、圖像處理等(děng)大多數常(cháng)用軟件(jiàn),一(yī)般會自動(dòng)安裝網(wǎng)卡、音效卡等(děng)設備的驅動(dòng)。
安裝MySQL
在(zài)Ubuntu上可以(yǐ)使用Ubuntu Software Center或(huò)者apt命令來安裝MySQL,兩種方式都十分方便。
1. 使用Ubuntu Software Center:打開Ubuntu Software Center,在右(yòu)上角的搜(sōu)索框查詢mysql,然後選(xuǎn)定MySQL Server,點擊安裝(zhuāng)即可。
2. 使用(yòng)apt:打開終端執行 ”sudo apt-get install mysql-server“ 即可。
MySQL初始配置
MySQL完成安裝(zhuāng)後可以直接使用root賬戶登(dēng)錄,且該賬戶默(mò)認(rèn)是沒有密碼(mǎ)的。注意這裏的root角色就是指你(nǐ)的Ubuntu的root角色,如果你當前使用的係統帳號不(bú)是root的話,也(yě)不必(bì)切換到係統root賬戶,可以在登(dēng)錄MySQL的時候使(shǐ)用“-u"這個參(cān)數(shù)來指定(dìng)登錄(lù)賬戶(hù)。如:
$ mysql -u root mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ 4 rows in set (0.00 sec)mysql> select Host, User from user; +-----------+------------------+ | Host | User | +-----------+------------------+ | 127.0.0.1 | root | | ::1 | root | | iUbuntu | | | iUbuntu | root | | localhost | | | localhost | debian-sys-maint | | localhost | root | +-----------+------------------+ 7 rows in set (0.00 sec)
因為此時root賬戶默認沒有密(mì)碼,所以不用輸(shū)入密碼就能以root角色登錄並查看(kàn)所有信(xìn)息的權限。如果(guǒ)換成非root角色登錄MySQL,則(zé)隻擁有部分數據庫操作權限。
$ mysql mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | test | +--------------------+ 2 rows in set (0.00 sec)mysql> use mysql ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'mysql'
因此(cǐ)MySQL完成(chéng)安裝後的第一件事(shì)就是給(gěi)root用戶設置密碼,否則數(shù)據庫將毫無安全可言。
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "<password>";
將以(yǐ)上命令中的<password>替(tì)換為你要設定的(de)密碼,以上命(mìng)令的意思是(shì)對在本機(localhost)使用<password>密碼登錄的(de)root用戶(hù)賦予所有數(shù)據庫的操作權限。設置密碼後,如(rú)果(guǒ)再(zài)以root用戶登錄就需要輸入密碼了,如:
$ mysql -u root ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO) $ mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 75 Server version: 5.5.34-0ubuntu0.13.10.1 (Ubuntu)Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>
建立數據庫獨立用(yòng)戶
因為root用戶擁有數據(jù)庫的所有操作權限,所以不能(néng)輕易地(dì)提供給別人使用。在一(yī)個MySQL實例中可以創建(jiàn)多個數據庫,這些數(shù)據庫可能(néng)歸(guī)屬於不同項目,每個數據庫(kù)的操(cāo)作角色也不一樣。對此可以針對不同那個數據庫指定(dìng)用(yòng)戶(hù)進(jìn)行訪問(wèn)。
首先使用(yòng)root角色創(chuàng)建(jiàn)一(yī)個數據(jù)庫 mysql> create database db_web_monitor然後將這個數據庫(kù)授予一(yī)個叫xavier的用戶使用 mysql> GRANT ALL PRIVILEGES ON db_web_monitor.* TO xavier@localhost IDENTIFIED BY "xavier";
這樣就可以使用xavier用戶,密碼為xavier在本機登錄MySQL操作db_web_monitor數據庫了。
$ mysql -u xavier ERROR 1045 (28000): Access denied for user 'xavier'@'localhost' (using password: NO) $ mysql -u xavier -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 77 Server version: 5.5.34-0ubuntu0.13.10.1 (Ubuntu)Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | db_web_monitor | | test | +--------------------+ 3 rows in set (0.00 sec)mysql>
開放遠程登錄權限(xiàn)
1. 首先(xiān)修改MySQL的配置文件,允許監聽遠程登錄(lù)。
$ sudo vi /etc/mysql/my.cnf找到bind-address所在行(háng) 45 # Instead of skip-networking the default is now to listen only on 46 # localhost which is more compatible and is not less secure. 47 bind-address = 127.0.0.1將 bind-address值(zhí)修(xiū)改為本(běn)機(jī)IP即可。注意注釋說明(míng),如果(guǒ)是(shì)較老版本的MySQL,此處就應該是skip-networking,直接將(jiāng)其注釋(shì)即可(kě)。
2. 授予(yǔ)用戶遠程登錄權限。
mysql>GRANT ALL PRIVILEGES ON db_web_monitor.* TO xavier@"%" IDENTIFIED BY "xavier";
如此(cǐ)這(zhè)般,xavier用(yòng)戶就可以在任意(yì)主機通過(guò)IP訪問到本機MySQL,對(duì)db_web_monitor數據庫進行操作了。
關鍵詞:ubuntu,mysql,數(shù)據庫(kù)
閱(yuè)讀本文後您有什麽感想(xiǎng)? 已有 人給出評價!
- 1
- 1
- 1
- 1
- 1
- 1