Bài giảng điện tử môn tin học: Apache MySQL PHP doc - Pdf 21

Apache & MySQL & PHP
Apache & MySQL & PHP


Đặng Thành Trung
Đặng Thành Trung
1. Giới thiệu về Apache
1. Giới thiệu về Apache

Là một WEB Server miễn phí được phát triển theo chuẩn mã nguồn mở.
Là một WEB Server miễn phí được phát triển theo chuẩn mã nguồn mở.

Apache chạy được trong cả hai môi trường Linux và Windows.
Apache chạy được trong cả hai môi trường Linux và Windows.

Có thể download phiên bản mới nhất của Apache tại địa chỉ:
Có thể download phiên bản mới nhất của Apache tại địa chỉ:


Các phiên bản 1.x và 2.x (mới nhất) khác nhau về kiến trúc. Chi tiết xin xem trong feature log.
Các phiên bản 1.x và 2.x (mới nhất) khác nhau về kiến trúc. Chi tiết xin xem trong feature log.
1.1. Cài đặt Apache 2.x
1.1. Cài đặt Apache 2.x

Download phiên bản mới nhất
Download phiên bản mới nhất
RPM (.rpm)
RPM (.rpm)


File cấu hình chính là
File cấu hình chính là
httpd.conf
httpd.conf
nằm trong thư mục
nằm trong thư mục
{apache_dir}\conf
{apache_dir}\conf
. Trong file này có thể chứa các khai báo include đến
. Trong file này có thể chứa các khai báo include đến
những file cấu hình khác.
những file cấu hình khác.

Mỗi dòng trong file cấu hình đều mang 1 ý nghĩa
Mỗi dòng trong file cấu hình đều mang 1 ý nghĩa

Là khoảng trắng
Là khoảng trắng

Là chú thích (bắt đầu bằng ký tự #)
Là chú thích (bắt đầu bằng ký tự #)

Là khai báo (gồm từ khóa và giá trị). Từ khóa và
Là khai báo (gồm từ khóa và giá trị). Từ khóa và
giá trị
giá trị
1.3. Cấu hình Apache (tt)
1.3. Cấu hình Apache (tt)


nào và cổng nào. Có thể khai báo nhiều lần

LoadModule
LoadModule
: Khai báo các module được nạp vào khi
: Khai báo các module được nạp vào khi
Apache khởi động. Nên dùng để bỏ bớt các module
Apache khởi động. Nên dùng để bỏ bớt các module
không cần thiết hoặc nạp module do người dùng tự
không cần thiết hoặc nạp module do người dùng tự
viết.
viết.

ServerName
ServerName
: Tên của server. Nếu Apache không tìm
: Tên của server. Nếu Apache không tìm
được tên của máy tính qua DNS thì khai báo này
được tên của máy tính qua DNS thì khai báo này
bắt buộc phải có.
bắt buộc phải có.

DocumentRoot
DocumentRoot
: Thư mục gốc của web server. Cần lưu
: Thư mục gốc của web server. Cần lưu
ý đến quyền của hệ thống gán lên thư mục này đối
ý đến quyền của hệ thống gán lên thư mục này đối
với account dùng để chạy Apache.
với account dùng để chạy Apache.

: Là khai báo khối, dùng để định nghĩa
các web server ảo theo tên trên một máy tính duy
các web server ảo theo tên trên một máy tính duy
nhất.
nhất.

Alias
Alias
: Dùng để tạo các thư mục ảo.
: Dùng để tạo các thư mục ảo.
2. Giới thiệu về MySQL
2. Giới thiệu về MySQL

Là một hệ quản trị cơ sở dữ liệu miễn phí được phát triển theo chuẩn mã nguồn mở.
Là một hệ quản trị cơ sở dữ liệu miễn phí được phát triển theo chuẩn mã nguồn mở.

MySQL chạy được trong cả hai môi trường Linux và Windows.
MySQL chạy được trong cả hai môi trường Linux và Windows.

Có thể download phiên bản mới nhất của MySQL tại địa chỉ:
Có thể download phiên bản mới nhất của MySQL tại địa chỉ:



Các phiên bản 3.x, 4x và 5.x (mới nhất) khác nhau về kiến trúc. Chi tiết xin xem trong feature log.
Các phiên bản 3.x, 4x và 5.x (mới nhất) khác nhau về kiến trúc. Chi tiết xin xem trong feature log.
2.1. Cài đặt MySQL 5.x
2.1. Cài đặt MySQL 5.x

Download phiên bản mới nhất

my.ini
được đặt tại thư mục
được đặt tại thư mục
{mysql_dir}
{mysql_dir}
là thư mục cài đặt MySQL.
là thư mục cài đặt MySQL.
2.3. Tập lệnh của mysql
2.3. Tập lệnh của mysql

Các lệnh của mysql được lưu trong thư mục {mysql_dir}\bin
Các lệnh của mysql được lưu trong thư mục {mysql_dir}\bin

Nên đưa thư mục trên vào đường dẫn PATH để có thể sử dụng lệnh trong mọi ngữ cảnh của dòng lệnh.
Nên đưa thư mục trên vào đường dẫn PATH để có thể sử dụng lệnh trong mọi ngữ cảnh của dòng lệnh.

Sau đây là một số lệnh thường dùng
Sau đây là một số lệnh thường dùng

mysqld-nt
mysqld-nt
: Là chương trình server để lắng nghe
: Là chương trình server để lắng nghe
các yêu cầu của client.
các yêu cầu của client.

mysql
mysql
: Là chương trình client dùng để kết nối và
: Là chương trình client dùng để kết nối và

mật khẩu kết nối hay không.

h: Dùng để chỉ định địa chỉ (Tên hoặc IP) của
h: Dùng để chỉ định địa chỉ (Tên hoặc IP) của
mysql server cần kết nối. Mặc định là localhost.
mysql server cần kết nối. Mặc định là localhost.

P: Dùng để chỉ định cổng kết nối. Mặc định là
P: Dùng để chỉ định cổng kết nối. Mặc định là
3306.
3306.
2.4. Sử dụng lệnh mysql (tt)
2.4. Sử dụng lệnh mysql (tt)

Sau khi kết nối thành công, có thể sử dụng các lệnh sau (kết thúc lệnh là dấu ;) để quản trị mysql server:
Sau khi kết nối thành công, có thể sử dụng các lệnh sau (kết thúc lệnh là dấu ;) để quản trị mysql server:

source <path to file>
source <path to file>

<create | drop> database <db name>; show
<create | drop> database <db name>; show
databases
databases

use <db name>; show tables
use <db name>; show tables

<create | drop | alter> table; desc <table name>
<create | drop | alter> table; desc <table name>

ánh xạ
ánh xạcủa csdl người dùng & phân quyền.
của csdl người dùng & phân quyền.

Lưu ý, ánh xạ trên là
Lưu ý, ánh xạ trên là
một chiều
một chiều
. Tức là chỉ có
. Tức là chỉ có
chiều từ csdl
chiều từ csdl
mysql sang csdl người dùng & phân quyền
mysql sang csdl người dùng & phân quyền
. Tuy nhiên, không
. Tuy nhiên, không
phải mỗi khi csdl mysql thay đổi thì csdl kia thay đổi theo.
phải mỗi khi csdl mysql thay đổi thì csdl kia thay đổi theo.

Để có quyền thay đổi (thực hiện ánh xạ), người dùng cần phải
Để có quyền thay đổi (thực hiện ánh xạ), người dùng cần phải
có 2 quyền:
có 2 quyền:
grant
grant



giá trị của host là khác nhau với tên và IP (nghĩa là
‘localhost’ <> 127.0.0.1
‘localhost’ <> 127.0.0.1
)
)

Mật khẩu của người dùng được lưu dưới dạng kết quả của hàm băm
Mật khẩu của người dùng được lưu dưới dạng kết quả của hàm băm
password. Để đổi mật khẩu cần dùng lệnh
password. Để đổi mật khẩu cần dùng lệnh
set password
set password
.
.

Bảng user cũng chứa các quyền toàn cục của người dùng.
Bảng user cũng chứa các quyền toàn cục của người dùng.

Các bảng khác:
Các bảng khác:
db, tables_priv, columns_priv
db, tables_priv, columns_priv
chứa các quyền của
chứa các quyền của
người dùng đối với các csdl, bảng và cột trong bảng (Sử dụng lệnh
người dùng đối với các csdl, bảng và cột trong bảng (Sử dụng lệnh
desc
desc
để biết thêm chi tiết).
để biết thêm chi tiết).

[
WITH GRANT OPTION
WITH GRANT OPTION
]
]

priv_type gồm các quyền:
priv_type gồm các quyền:

ALL [PRIVILEGES]
ALL [PRIVILEGES]

ALTER
ALTER

<CREATE | DROP> <DATABASE | TABLE>
<CREATE | DROP> <DATABASE | TABLE>

SELECT,INSERT,UPDATE, DELETE
SELECT,INSERT,UPDATE, DELETE




trong đó cần lưu ý:
trong đó cần lưu ý:
ALL không chứa quyền
ALL không chứa quyền
grant
grant

quyền grant
(global)
(global)


quyền insert,update
quyền insert,update
trên bảng user trong csdl
trên bảng user trong csdl
mysql.
mysql.

Thông thường, nếu người dùng chưa tồn tại thì
Thông thường, nếu người dùng chưa tồn tại thì
grant
grant
tạo luôn người dùng mới
tạo luôn người dùng mới
, nếu không nó sẽ cấp quyền
, nếu không nó sẽ cấp quyền
cho người dùng đã có (nhưng
cho người dùng đã có (nhưng
không xóa các quyền khác
không xóa các quyền khác
,
,
để xóa cần dùng lệnh
để xóa cần dùng lệnh
REVOKE
REVOKE

chưa được ánh xạ
từ csdl mysql
từ csdl mysql
sang.
sang.

Để thực hiện ánh xạ trên, người dùng cần thực
Để thực hiện ánh xạ trên, người dùng cần thực
hiện lệnh
hiện lệnh
flush privileges
flush privileges
và phải có
và phải có
quyền
quyền
reload
reload
.
.
2.6. Người dùng và phân quyền (tt)
2.6. Người dùng và phân quyền (tt)

Cập nhật trực tiếp vào csdl mysql:
Cập nhật trực tiếp vào csdl mysql:

Như đã nói, csdl người dùng & phân quyền của
Như đã nói, csdl người dùng & phân quyền của
MySQL là ánh xạ trực tiếp từ csdl mysql sang. Do
MySQL là ánh xạ trực tiếp từ csdl mysql sang. Do

2.7 Ví dụ
2.7 Ví dụ

Yêu cầu:
Yêu cầu:

Cài đặt MySQL phiên bản 5.x vào hệ điều hành
Cài đặt MySQL phiên bản 5.x vào hệ điều hành
Windows
Windows

Dùng chương trình Install Wizard để thiết lập MySQL
Dùng chương trình Install Wizard để thiết lập MySQL
chạy như một service và đặt mật khẩu của tài khoản
chạy như một service và đặt mật khẩu của tài khoản
root là ‘root’.
root là ‘root’.

Thực hành:
Thực hành:

Gõ lệnh
Gõ lệnh
mysql –u root –p
mysql –u root –p
tại dấu nhắc lệnh của cửa
tại dấu nhắc lệnh của cửa

Thực hành (tt):
Thực hành (tt):

create table
create table
`mytable` (
`mytable` (
`field1`
`field1`
char
char
(10)
(10)
collate
collateutf8_unicode_ci
utf8_unicode_cinot null
not null
,
,
`field2`
`field2`
int unsigned default 0
int unsigned default 0
,

default charset
=utf8
=utf8
collate
collate
=
=
utf8_bin
utf8_bin
;
;

show tables
show tables
;
;

desc
desc
mytable;
mytable;

insert into
insert into
mytable
mytable
set
set
user
set
set
user = ‘u1’, host = ‘localhost’,
user = ‘u1’, host = ‘localhost’,password = password(‘test’);
password = password(‘test’);

create user
create user
u2@localhost
u2@localhost
identified by
identified by
‘test’;
‘test’;

create user
create user
u3@localhost
u3@localhost
identified by password
identified by password


*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29’;
*94BDCEBE19083CE2A1F959FD02F964C7AF4CFC29’;


host = ‘localhost’, user = ‘u3’,
db = ‘mydb’, table_name = ‘mytable’,
db = ‘mydb’, table_name = ‘mytable’,
table_priv = ‘Select,Insert,Update’
table_priv = ‘Select,Insert,Update’
;
;

flush privileges
flush privileges
;
;

set password
set password
=
=
password
password
(‘abc’);
(‘abc’);

Copy các lệnh cần thiết vào file c:\mysql.sql sau
Copy các lệnh cần thiết vào file c:\mysql.sql sau
đó chạy lệnh sau tại dấu nhắc lệnh của MySQL:
đó chạy lệnh sau tại dấu nhắc lệnh của MySQL:
source
source
c:\mysql.sql;
c:\mysql.sql;

Personal Home Page. Nhưng hiện nay PHP được coi là sự chơi chữ của việc viết tắt đệ quy cụm từ PHP: Hypertext
Personal Home Page. Nhưng hiện nay PHP được coi là sự chơi chữ của việc viết tắt đệ quy cụm từ PHP: Hypertext
Preprocessor.
Preprocessor.

PHP chạy được trong cả hai môi trường Linux và Windows. Có thể download phiên bản mới nhất của PHP tại địa chỉ:
PHP chạy được trong cả hai môi trường Linux và Windows. Có thể download phiên bản mới nhất của PHP tại địa chỉ:



Các phiên bản 4x và 5.x (mới nhất) khác nhau về kiến trúc. Chi tiết xin xem trong feature log.
Các phiên bản 4x và 5.x (mới nhất) khác nhau về kiến trúc. Chi tiết xin xem trong feature log.

Trích đoạn hoặc do người dùng định nghĩa) và từ khóa thì không phân biệt từ khóa thì không phân biệt Kiểu dữ liệu (tt) Kiểu dữ liệu (tt)
Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status