国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySql管理的一點心得

2024-07-24 12:58:43
字體:
來源:轉載
供稿:網(wǎng)友
MySQL數(shù)據(jù)庫是中小型網(wǎng)站后臺數(shù)據(jù)庫的首選,因為它對非商業(yè)應用是免費的.網(wǎng)站開發(fā)者可以搭建一個"linux+Apache+php+MySql" 平臺,這是一個最省錢的高效平臺.在使用MySql進行開發(fā)時,MySql自帶的文檔對于新手來說是份很好的參考資料.本文是我在使用MySql中的小小心得。   MySql數(shù)據(jù)庫是中小型網(wǎng)站后臺數(shù)據(jù)庫的首選,因為它對非商業(yè)應用是免費的.網(wǎng)站開發(fā)者可以搭建一個"Linux+Apache+PHP+MySql" 平臺,這是一個最省錢的高效平臺.在使用MySql進行開發(fā)時,MySql自帶的文檔對于新手來說是份很好的參考資料.本文是我在使用MySql中的小小心得。

  當前一般用戶的開發(fā)環(huán)境多是Windows或Linux,在 windows中MySql以服務形式存在,在使用前應確保此服務已經(jīng)啟動,未啟動可用net start mysql命令啟動。而Linux中啟動時可用“/etc/rc.d/init.d/mysqld start"命令,注意啟動者應具有管理員權限。

  剛安裝好的MySql包含一個含空密碼的root帳戶和一個匿名帳戶,這是很大的安全隱患,對于一些重要的應用我們應將安全性盡可能提高,在這里應把匿名帳戶刪除、 root帳戶設置密碼,可用如下命令進行:

  use mysql;

  delete from User where User="";

  update User set PassWord=PASSWORD('newpassword') where User='root';

  如果要對用戶所用的登錄終端進行限制,可以更新User表中相應用戶的Host字段,在進行了以上更改后應重新啟動數(shù)據(jù)庫服務,此時登錄時可用如下類似命令:

  mysql -uroot -p;

  mysql -uroot -pnewpassword;

  mysql mydb -uroot -p;

  mysql mydb -uroot -pnewpassword;

  上面命令參數(shù)是常用參數(shù)的一部分,詳細情況可參考文檔。此處的mydb是要登錄的數(shù)據(jù)庫的名稱。

  在進行開發(fā)和實際應用中,用戶不應該只用root用戶進行連接數(shù)據(jù)庫,雖然使用root用戶進行測試時很方便,但會給系統(tǒng)帶來重大安全隱患,也不利于管理技術的提高。我們給一個應用中使用的用戶賦予最恰當?shù)臄?shù)據(jù)庫權限。如一個只進行數(shù)據(jù)插入的用戶不應賦予其刪除數(shù)據(jù)的權限。MySql的用戶管理是通過 User表來實現(xiàn)的,添加新用戶常用的方法有兩個,一是在User表插入相應的數(shù)據(jù)行,同時設置相應的權限;二是通過GRANT命令創(chuàng)建具有某種權限的用戶。其中GRANT的常用用法如下:

  grant all on mydb.* to NewUserName@HostName identified by "password" ;

  grant usage on *.* to NewUserName@HostName identified by "password";

  grant select,insert,update on mydb.* to NewUserName@HostName identified by "password";

  grant update,delete on mydb.TestTable to NewUserName@HostName identified by "password";

  若要給此用戶賦予他在相應對象上的權限的管理能力,可在GRANT后面添加WITH GRANT OPTION選項。而對于用插入User表添加的用戶,Password字段應用PASSWORD 函數(shù)進行更新加密,以防不軌之人竊看密碼。對于那些已經(jīng)不用的用戶應給予清除,權限過界的用戶應及時回收權限,回收權限可以通過更新User表相應字段,也可以使用REVOKE操作。

全局管理權限:

  FILE: 在MySQL服務器上讀寫文件。

  PROCESS: 顯示或殺死屬于其它用戶的服務線程。

  RELOAD: 重載訪問控制表,刷新日志等。

  SHUTDOWN: 關閉MySQL服務。

  數(shù)據(jù)庫/數(shù)據(jù)表/數(shù)據(jù)列權限:

  ALTER: 修改已存在的數(shù)據(jù)表(例如增加/刪除列)和索引。

  CREATE: 建立新的數(shù)據(jù)庫或數(shù)據(jù)表。

  DELETE: 刪除表的記錄。

  DROP: 刪除數(shù)據(jù)表或數(shù)據(jù)庫。

  INDEX: 建立或刪除索引。

  INSERT: 增加表的記錄。

  SELECT: 顯示/搜索表的記錄。

  UPDATE: 修改表中已存在的記錄。

  特別的權限:

  ALL: 允許做任何事(和root一樣)。

  USAGE: 只允許登錄--其它什么也不允許做。

  最后給出本人在RedHat9.0下的MySql操作演示:

  選用數(shù)據(jù)庫的root用戶登錄

  [weiwen@weiwenlinux]$mysql -uroot -p

  Enter password:MyPassword

  mysql>create database mydb;

Query OK, 1 row affected (0.02 sec)

  mysql>use mydb;

  Database changed

  mysql>create table TestTable(Id int aut_increment primary key,

  UserName varchar(16) not null,

  Address varchar(255));

  Query OK, 0 rows affected (0.02 sec)

  mysql>grant all on mydb.* to test@localhost identified by "test";

  Query OK, 0 rows affected (0.01 sec)

  mysql>quit

  Bye

  [weiwen@weiwenlinux]$mysql mydb -utest -ptest

  其中test.sql是用vi編輯好的SQL腳本,其內容為:

  Insert into TestTable(UserName,Address)values('Tom','shanghai');

  Insert into TestTable(UserName,Address)values('John','beijing');

  select * from TestTable;

  運行已經(jīng)編輯好的SQL腳本可以用source filename 或 . filename。

  以上只是對新手的簡單練習,要成為一個數(shù)據(jù)庫好手,當以孜孜不倦地追求知識,不斷地思考、嘗試、再思考。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 读书| 西昌市| 沙洋县| 峨眉山市| 玛沁县| 家居| 清徐县| 林甸县| 清河县| 淮北市| 云和县| 阜宁县| 盖州市| 白朗县| 郑州市| 安国市| 乐至县| 若尔盖县| 南昌市| 康乐县| 永安市| 甘孜县| 新民市| 区。| 榕江县| 永昌县| 天镇县| 崇文区| 黄山市| 安化县| 东兰县| 金沙县| 十堰市| 宜章县| 舒兰市| 论坛| 淳安县| 临夏市| 霍林郭勒市| 宣城市| 高碑店市|