一:安裝後的配置 文件目錄: /var/lib/mysql/ /usr/share/mysql(mysql.server命令及配置文件) /usr/bin(mysqladmin mysqldump等命令) /etc/rc.d/init.d/mysqld(啟動腳本文件MySQL的目錄)
啟動: su - MySQL
/etc/rc.d/init.d/MySQLd start
注:我的是mysqld,也可能是MySQL
獲取信息: $ mysql -u root MySQL
注:如果你得到一些信息,然後是MySQL>提示符,說明已經進入了。輸入\s可以得到更多信息
$ MySQLadmin -u root version
注:查看版本號
修改密碼: $ MySQLadmin -u root password newpassWord
注:newpassWord便是新密碼,剛開始的時候默認是無密碼的。但是這種修改密碼的方法不安全
因為終端會有記錄,留在shell歷史中。更好的方法就是通過mysql控制台,使用sql語句。 $ MySQL -u -root
MySQL> SET password=PASSWORD('newpassWord');
注:newpassword的位置輸入你的密碼。下面查看密碼。 mysql>SELECT user, host, passWord FROM MySQL.user | user | host | passWord | | root | localhost | *41B6A162BA4FE528AE031B240564968C3EDB4A70 |
| doa | % | *41B6A162BA4FE528AE031B240564968C3EDB4A70 | 2 rows in set (0.00 sec)
注:這顯示的是我電腦裡面的密碼。下面講解如何刪除密碼。 mysql> DELETE FROM MySQL.user WHERE user !='root';
注:將刪除非root用戶
mysql> DELETE FROM mysql.user WHERE host !='localhost'; MySQL> eixt;
注:退出。或者quit; 或者\q
創建用戶: 當然你可以用root賬戶登錄,但這不是一個好選擇。需要創建一個普通用戶來為日常使用。
在此將創建一個擁有廣泛權限的用戶 doa。doa有三種方式進行鏈接。
1.從本地機器連接
2.從IP地址在192.168.0.0 ―>192.168.0.255范圍內的任何機器進行鏈接
3.從wiley.com域中的任何機器鏈接。 MySQL>GRANT ALL ON *.* TO doa@localhost IDENTIFIED BY "passWord";
MySQL>GRANT ALL ON *.* TO doa@'192.168.0.0/192.168.0.255' IDENTIFIED BY "passWord";
MySQL>GRANT ALL ON *.* TO doa@'wiley.com' IDENTIFIED BY "passWord"; 注: grant 是創建命令。ALL代表所有權限。ON *.* 使用了通配符,說明權限作用在所有的文件
上。IDENTIFIED BY "password" 設置密碼為pssWord。
二:MySQL管理 1.myisamchk 為了檢查/修復MyISAM表(.MYI和.MYD) 如果你使用myisamchk修復或優化表,你必須總是保證MySQLd服務器不在使用表(如果
你正在使用--skip-locking,這也適用)。如果你不停掉MySQLd,在你運行myisamchk前,你至少
應該做一個MySQLadmin flush-tables。語法:
shell> myisamchk [options] tbl_name myisamchk /path/to/datadir/*/*.MYI myisamchk -d tbl_name
以“描述模式”運行myisamchk,生成你的表的描述。如果你用--skip-locking選項啟動MySQL
服務器,myisamchk可以當它運行時報告被一個更新的表的錯誤。然而,既然在描述模式中
myisamchk不改變表,沒有破壞數據的任何風險。 myisamchk -d -v tbl_name
為了生成更多關於myisamchk正在做什麼的信息,加上-v告訴它以冗長模式運行。 myisamchk -eis tbl_name
僅顯示一個表最重要的信息。因為必須讀取整個表,它很慢。 myisamchk -eiv tbl_name
這類似-eis,只是告訴你正在做什麼。
2.MySQL命令 這是MySQL主要的並且唯一的完全世命令行工具。 $MySQL -u -doa -p table_name
注:-p讓程序提示你輸入密碼
$MySQL -u -doa -p table_name < sqlcommands.sql
注:從一個文件中讀取命令
3.MySQLadmin 進行快速管理的工具 shell> MySQLadmin [OPTIONS] command [command-option] command ...
詳細參數見MySQLadmin --help
4.MySQLbug 生成一個用於發送給MySQL維護者的錯誤報告。
5.MySQLdump 允許你以sql命令集的形式將部分或整個數據庫導出到一個單獨文件中。可用來備份。 mysqldump -u root -p mysql >MySQL.dump
6.MySQLimport 從輸入文件中讀取大量數據。一般讀取由MySQLdump創建的文件,當然足夠耐心或者形式所迫的
話也可以自己創建。
7.MySQLshow 提供關於你的MySQL安裝及其組成數據庫的的快速信息 MySQLshow -u root -p
注:列出所有可用的數據庫。
8.grant命令 創建用戶並賦予權限 grant <privilege> on <object> to <user> [identifIEd by user-passWord] [ with grant] ; <privilege>的權限有
alter 改變表格和索引
create 創建數據庫和表格
delete 從數據庫中刪除數據
drop 刪除數據庫和表格
index 管理索引
insert 在數據庫中插入數據
select 提取數據
update 修改數據
all 以上所有
<object>格式為databasename.tablename,在此可以使用unix通配符*,如*.*
<user>事例為doa@localhost,在此可以使用sql的通配符%,如doa@'%'
identifIEd by 是可選的,每次都設定密碼是個好主意。
9.revoke 剝奪管理員權限,但是不能刪除用戶。 revoke <privilege> on <object> to <user> ; mysql>use MySQL
MySQL>DELETE FROM user WHERE user ="doa"
MySQL>FLUSH PRIVILEGES;
注:delete和grant,revoke不屬於同一范疇。delete是sql語法,grant,revoke是MySQL命令
mysql裡面可以允許使用sql語法。對於grant,revoke,use命令是沒有必要的,因為MySQL知
道你想操作權限表。
10.修改密碼update UPDATE user SET password = password('newpassWord') WHERE user = 'doa';
11.創建數據庫create MySQL> CREATE DATABASE newDatabase;
MySQL> use newDatabase
12.創建表格create CREATE TABLE table_name (
column_name type [ NULL | NOT NULL] [auto_increment] [PRIMARY KEY], [PRIMARY KEY (column_name [, ...]) ] 事例:
CREATE TABLE children (
childno int(11) NOT NULL auto_increment,
fname varchar(13),
age int(11),
PRIMARY KEY (childno)
); INSERT INTO children VALUES (5, 'Jenny', 17) ;
INSERT INTO children VALUES (2, 'DOA1', 12) ;
INSERT INTO children VALUES (3, 'DOA2', 17) ;
INSERT INTO children VALUES (4, 'DOA3', 17) ; auto_increment 自動加一
NULL 未知的,無關的
PRIMARY KEY 主鍵
三:圖形化工具 continue。。。。