码迷,mamicode.com
首页 > 数据库 > 详细

20151018作业---MariaDB、编译LAMP及samba

时间:2015-10-20 10:35:53      阅读:312      评论:0      收藏:0      [点我收藏+]

标签:管理员   mysql   客户端   配置文件   优先级   

第一部分:MariaDB基础总结

1、基础

 A:MariaDB为C/S架构:同一主机基于Unix Sock,不同主机基于TCP/IP,监听3306端口

 B:配置文件: /etc/my.cnf --> /etc/mysql/my.cnf --> ~/.my.cnf  后面配置的优先级最高

 C:mysql客户端登陆

   -u USERNAME: 连接Server使用的账号;管理员为root;(非OS)    
   -h HOSTNAME or IP:连入的Server    
  -p PASSWORD:前面使用-u选项指定的用户的密码;

 D:安装方式

   源代码

   通用二进制:解压后直接运行

   包管理器    
 

2、表管理

 包括DDL与DML二种,其中DDL包括创建、修改、删除数据库,DML包括增、删、查、改相应表

 A:创建表:

  通过help create table查看帮助文件

 CREATE TABLE [IF NOT EXISTS] tbl_name (col1 type1 dec1, col2 type2 dec2, ...)

示例:create table test.techers(tid int unsigned not null auto_increment primary key,    
name varchar(50) not null,age tinyint unsigned,gender enum(‘f‘,‘m‘) default ‘m‘,    
echeng varchar(100),unique key(name,kecheng));

 B:删除表:Drop table删除表

C:查询

SELECT    
    [DISTINCT] #去重    
    [SQL_CACHE | SQL_NO_CACHE]    
    col_name AS Alias, col_name AS Alias, ...    
   [FROM table_references    
   [WHERE where_condition]    
   [ORDER BY {col_name | expr | position}    
   [ASC | DESC], ...]

限制条件:

   WHERE后的条件表达式:    
     >, <, >=, <=, ==, !=    
   BETWEEN ... AND ...    
   LIKE ‘pattern‘    
     _    
    %    
    RLIKE ‘pattern‘

示例:select * from test.techers where name rlike ‘^[a-m].*i.*$‘

 利用正则表达式,查询以子母a到z开头的名称    

D:插入:

INSERT [INTO] tbl_name [(col_name,...)]{VALUES | VALUE} ({expr | DEFAULT},...),(...),...

  要求前后字段数量相同

示例:

insert into test.techers (name,age,classid,gender,kecheng) values (‘emily‘,18,119,‘f‘,‘tulongdao‘);

E:修改:alter table

change修改表字段,名称等    
modify只能修字段定义,不能修改名称    

示例:alter table test.techers add classID smallint UNSIGNED not null after name;

F:修改数据update

UPDATE:    
   UPDATE table_reference    
   SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ...    
   [WHERE where_condition]    
   [ORDER BY ...]    
   [LIMIT row_count]

示例:update test.techers set age=20 where tid =1; #修改tid为1的年龄

 

3、索引管理

A:创建索引

CREATE [UNIQUE|FULLTEXT|SPATIAL] INDEX index_name ON tbl_name (index_col_name,...)

B:删除索引

DROP INDEX index_name ON tbl_name

 

4、用户权限管理

A:授权:如果用户事先不存在,则创建此账号并授权

GRANT priv1,... ON db_name.tbl_name TO ‘username‘@‘host‘ [IDENTIFIED BY [PASSWORD] ‘password‘];

示例:grant all on test.* to ‘wpuser‘@‘%‘;  #表示text库中所有表

  可利用show grants [for user]查看已获得权限

示例:show grants for ‘wpuser‘@‘%‘;

B:回收权限

REVOKE priv1,... ON db_name.tbl_name FROM ‘username‘@‘host‘;

示例:

#revoke insert,update on test.* from ‘wpuser‘@‘%‘;    
   收回wpuser在test库中所有表的插入、update权限 


第二部分:编译安装LAMP,其中分别实现

(1)把php编译成为httpd的模块

第一步:编译安装httpd24

1、暂时原httpd服务,分别利用yum和ftp安装

yum安装pcre-devel  zlib-devel

yum groupinstall "Development Tools" "Server Platform Development" –y

技术分享  

apr-1.5.0.tar.bz2 apr-util-1.5.3.tar.bz2 httpd-2.4.9.tar.bz2

2、按照顺序进行安装

先安装apr-1.5.0.tar.bz2

然后apr-util-1.5.3.tar.bz2

最后是httpd-2.4.9.tar.bz2

A:解压安装APR

./configure --prefix=/usr/local/apr目录 #该目录为新指定目录防止与原安装冲突

技术分享

配置后运行make  && make install

技术分享

B:安装apr-util-1.5.3.tar.bz2

技术分享

./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr  #利用with-apr指定新apr路径

技术分享

安装完成运行make && make install

技术分享

C:安装httpd

运行以下脚本

./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd24 --enable-so --
enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/
local/apr --with-apr-util=/usr/local/apr-util/ --enable-moudles=most --enable-mpms-shared=all --with-mpm=prefork

技术分享

同时运行make && make install进行安装

D:配置及验证

1、apachectl路径

技术分享  

2、运行apachectl start启动服务

技术分享  

3、后续配置/etc/httpd24/httpd.conf主配置文件

第二步:安装mariadb

1、停止原mysql服务

技术分享

2、创建新文件系统,mydata目录

技术分享  

3、下mariadb-5.5.40-linux-x86_64解压/usr/local目录

创建软连接ln –sv mariadb-5.5.40-linux-x86_64 mysql

技术分享  

4、卸载原mysql

yum remove mysql-server mysql

5、修改权限mysql 用户和mysql用户组

技术分享  

6、根据环境复制配置文件,复制前将/etc/mysql目录创建

技术分享

7、编译mysql库

scripts/mysql_install_db --user=mysql --datadir=/data/mydata/

技术分享

8、 /etc/mysql/my.cnfdatadir=/data/mydata

技术分享

9、修改环境变量/etc/rc.d/init.d/mysqld,启动mysql

技术分享

第三步:安装编译php

1、通过yum install额外安装:libxml2-devel, libmcrypt-devel, bzip2-devel

技术分享

2、php-5.4.42.tar.bz2进行编译安装

技术分享  

3、make && make install

技术分享  

 

4、复制配置目录下的php.ini.production/etc/php目录

将修改时区

技术分享

5、编辑/etc/httpd24/httpd.conf文件,加载相应模块

技术分享  

6、编辑/etc/httpd24/httpd.conf文件

添加以下

技术分享 

 

同时在index部分添加

DirectoryIndex index.php index.html

技术分享

7、重新载入测试页

技术分享

8、配置php与mysql通信

编辑/usr/local/apache/htdocs/目录下index.php文件

技术分享  

测试

技术分享  

9、后续可利用ab工具进行相应的测试

可分为动态与静态二种方式

技术分享  

(2)php以fpm工作为独立守护进程

php为独立守护进程的区别是以单独进行的形式存在,这里区别在于编译时参数调整。之前

内容相同。这里不说明,后续从编译开始说明(区别是—enable-fpm)

1、删除原php5.4.42解压目录,重新解压,运行脚本重新

                                                  

./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=

/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png

-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --enable-fpm --with-mcrypt --

with-config-file-path=/etc --with-config-file-scan-dir=/etc/php.d --with-bz2

2、编译完成make && make install

    

3、修改配置文件

# cp php.ini-production /etc/php.ini

配置php-fpm

为php-fpm提供SysV init脚本,并将其添加至服务列表:

# cp sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm

# chmod +x /etc/rc.d/init.d/php-fpm

# chkconfig --add php-fpm

# chkconfig php-fpm on

技术分享

4、编辑php-fpm.conf

主要修改pid = /usr/local/php5/var/run/php-fpm.pid

 

技术分享  

5、启动验证

利用 service php-fpm start 启动

ps aux | grep php-fpm

技术分享  

同时利用netstat –tnlp|grep php-fpm,监控在9000端口

    

6、配置fastcgi

修改/etc/httpd24/httpd24.conf

启用以下二个模块

 

LoadModule proxy_modulemodules/mod_proxy.so

LoadModule proxy_fcgi_modulemodules/mod_proxy_fcgi.so

 

配置代理

  

 技术分享

7、启动验证,利用AB工具进行相应的

  

技术分享


 

第三部分:

20151018作业---MariaDB、编译LAMP及samba

标签:管理员   mysql   客户端   配置文件   优先级   

原文地址:http://wangsongbin.blog.51cto.com/1130001/1704413

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!