1.9第三周星期一
创始人
2024-05-09 19:44:47
0

LAMP环境搭建

1. 下载

 yum install gcc gcc-c++ cmake ncurses ncurses-devel bison wget openssl-devel -y

rpm -qa | grep mysql
 rpm -qa| grep mariadb
 yum install gcc gcc-c++ cmake ncurses ncurses-devel bison wget openssl-devel -y

 2.建立mysql 组,<--新建mysql用户

   1.  groupadd mysql
   2. useradd -g mysql -s /sbin/nologin -u 49 -M mysql
   3. mkdir -p /data/mysql/data
   4. mkdir -p /data/mysql/log
   5.  mkdir -p /data/mysql/trpmmp
   6.  mkdir -p /data/mysql/binlog

7. mv boost_1_59_0 /usr/local/boost

8. tar fx mysql-5.7.29.tar.gz

9.  cd /usr/local/mysql57
10.   ls
12.  cd mysql-5.7.29/

13. yum install gcc gcc-c++ cmake ncurses ncurses-devel bison wget openssl-devel -y
14.    ls
 15.  cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 -DSYSCONFDIR=/etc -DMYSQL_DATADIR=/data/mysql/data -DMYSQL_UNIX_ADDR=/data/mysql/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii -DENABLED_LOCAL_INFILE=ON -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 -DWITHOUT_PARTITION_STORAGE_ENGINE=1 -DWITH_ZLIB=bundled -DWITH_EMBEDDED_SERVER=OFF -DWITH_DEBUG=0 -DWITH_SYSTEMD=1 -DWITH_BOOST=/usr/local/boost 

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 \ #安装目录
-DSYSCONFDIR=/etc \ #配置文件目录
-DMYSQL_DATADIR=/data/mysql/data \ #数据目录
-DMYSQL_UNIX_ADDR=/data/mysql/tmp/mysql.sock \ #sock文件位置,套接字位置
-DDEFAULT_CHARSET=uls

tf8 \ #默认字符集
-DDEFAULT_COLLATION=utf8_general_ci \ #默认字符集校验规则,避免中文乱码
-DEXTRA_CHARSETS=gbk,gb2312,utf8,ascii \ #额外的字符集支持
-DENABLED_LOCAL_INFILE=ON \ #是否启用加载本地数据,允许从本地文件读取数据
-DWITH_INNOBASE_STORAGE_ENGINE=1 \ #启用innodb存储引擎
-DWITH_FEDERATED_STORAGE_ENGINE=1 \ #启用blackhole存储引擎
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ #启用FEDERATED存储引擎
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \ #不使用example存储引擎
-DWITHOUT_PARTITION_STORAGE_ENGINE=1 \ #不使用PARTITION引擎
-DWITH_ZLIB=bundled \ #启用zlib支持,与压缩相关
-DWITH_EMBEDDED_SERVER=OFF \ #嵌入式服务设置
-DWITH_DEBUG=0 \ #禁用dbug,开启影响性能
-DWITH_SYSTEMD=1 \ #支持systemd服务
-DWITH_BOOST=/usr/local/boost #指定boost库位置,从5.7开始,安装需要boost库

16.      ls
17.   make -j4 && make install

18. [root@node1 mysql-5.7.29]# chown -R mysql.mysql /data/mysql/
19. [root@node1 mysql-5.7.29]# chown -R mysql.mysql /usr/local/mysql57/
20. [root@node1 mysql-5.7.29]# echo 'export PATH=/usr/local/mysql57/bin:$PATH' >> /etc/profile
21. [root@node1 mysql-5.7.29]# tail -1 /etc/profile
23. [root@node1 mysql-5.7.29]# source /etc/profile

配置 mysql

[client]  #客户端设置
port    = 3306
socket    = /data/mysql/tmp/mysql.sock
default-character-set = utf8mb4

[mysqld]
user = mysql
port = 3306
datadir = /data/mysql/data/ #数据库存放目录
tmpdir = /data/mysql/tmp #临时文件位置
socket = /data/mysql/tmp/mysql.sock #socket文件位置
server-id = 1 #用于mysql主从
pid-file = /data/mysql/tmp/mysql.pid #pid文件位置
basedir = /usr/local/mysql57 #安装目录
character_set_server = utf8mb4 #系统数据库编码设置
collation_server = utf8mb4_bin #字符集校对规则
back_log = 1024 #满负荷时,能够对方的请求数,也就是监听的TCP/IP连接队列的大小
explicit_defaults_for_timestamp = ON #timestamp类型字段所在数据行被更新时,该字段不会自动更新为当前时间
lower_case_table_names = 0 #区分大小写
sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION #语法校验规则

max_connections = 512 #最大连接数
max_connect_errors = 1000000 #如果MySQL服务器连续接收到了来自于同一个主机的请求,而且这些连续的请求全部都没有成功的建立连接就被中断了,当这些连续的请求的累计值大于max_connect_errors的设定值时,MySQL服务器就会阻止这台主机后续的所有请求。主要是网络异常
table_open_cache = 1024 #缓存打开的表的数量,mysql每打开一个表,都会读入一些数据到table_open_cache缓存中,当mysql在这个缓存中找不到相应的信息时,才会去磁盘上直接读取。
max_allowed_packet = 8M #指mysql服务器端和客户端在一次传送数据包的过程当中最大允许的数据包大小。
thread_stack = 256K #线程堆栈大小,太小则会限制服务器可以处理的SQL语句的复杂性,存储过程的递归深度以及其他消耗内存的操作.
thread_cache_size = 384 #线程池缓存大小 个
skip-external-locking #跳过外部锁定,当外部锁定(external-locking)起作用时,每个进程若要访问数据表,则必须等待之前的进程完成操作并解除锁定。由于服务器访问数据 表时经常需要等待解锁,因此在单服务器环境下external locking会让MySQL性能下降。
interactive_timeout = 600 #服务器在关闭交互式连接前,客户端等待的秒数。
wait_timeout = 3600 #服务器在关闭非交互式连接前,应用程序等待的秒数
log_timestamps = SYSTEM #这个参数主要是控制 error log、slow_log等等记录日志的显示时间参数 SYSTEM=系统时间,可以避免看错误日志、慢查询日志的时候,时间总是和本地时间对不上
log-bin = /data/mysql/binlog/mysql-bin #二进制日志存放位置,用于记录用户对数据库操作的SQL语句((除了数据查询语句)信息
log-error = /data/mysql/log/mysql-error.log #错误日志存放位置
default_storage_engine=InnoDB #定义默认的存储引擎


24. [root@node1 mysql-5.7.29]# vim /etc/my.cnf
[mysqld]
datadir=/data/mysql/data
socket=/data/mysql/tmp/mysql.sock
symbolic-links=0
explicit_defaults_for_timestamp=ON
default_storage_engine=InnoDB
server-id=1
pid-file=/data/mysql/tmp/mysql.pid
basedir=/usr/local/mysql57
character_set_server=utf8mb4
collation_server=utf8mb4_bin
log-bin=/data/mysql/binlog/mysql-bin
log-error=/data/mysql/log/mysql-error.log

25. 初始化mysql
[root@node1 mysql-5.7.29]# /usr/local/mysql57/bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql57 --datadir=/data/mysql/data

26. 制作服务
[root@node1 mysql-5.7.29]# cp /usr/local/mysql57/usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/


27. [root@node1 mysql-5.7.29]# vim /usr/lib/systemd/system/mysqld.service
PIDFile=/data/mysql/tmp/mysql.pid
ExecStart=/usr/local/mysql57/bin/mysqld --daemonize --pid-file=/data/mysql/tmp/mysql.pid $MYSQLD_OPTS

28. [root@node1 mysql-5.7.29]# systemctl daemon-reload
29. [root@node1 mysql-5.7.29]# systemctl start mysqld.service
30. [root@node1 mysql-5.7.29]# lsof -i :3306
31. [root@node1 mysql-5.7.29]# mysql -u root -p

下午:

01

更新:flush privileges;

修改密码:

 mysql管理员也是root,但不与系统中的是一个,只是重名。改密码之后,刷新 flush 

 

 

查看表内容:

select * from databasename.tablename;

select * from databasename.tablename\G

 

 密码字段5.7:

添加数据
insert into 

mysql> create database chaitin;
mysql> use chaitin;
mysql> create table user (names char(18) not null,tel char(11) not null default 0);

mysql> insert into chaitin.user (names,tel) values ("zhangsan","12312341234");
mysql> insert into chaitin.user values ("lisi","12312341235");
mysql> insert into chaitin.user (names) values ("tom");
mysql> insert into chaitin.user values("wangwu","12312341236"),("laowang","12312341237");

mysql> select * from chaitin.user;

更新
update  databasename.tablename set .....    where

mysql> update chaitin.user set tel=55555555555 where names='tom';
mysql5.7没有password子段,使用的是authentication_string
mysql> flush privileges

删除
delete from  database.tablename where xxxx=xxx
mysql> delete from chaitin.user where names='tom';

设置权限
grant 权限,权限  on  库名.表名 to 用户名@主机 identified by '密码'

create
drop
delete
update
insert
all

设置权限
mysql> grant all on bbsdb.* to 'runbbs'@'localhost' identified by 'admin123';
查看权限
mysql> show grants for 'runbbs'@'localhost';

撤销权限
revoke 权限,权限     库名.表名 from username;
mysql> revoke update on bbsdb.* from 'runbbs'@'localhost';



LAMP
apache
参照之前安装方法

加密
[root@node1 lamp]# tar fx libmcrypt-2.5.8.tar.gz 
[root@node1 lamp]# cd libmcrypt-2.5.8/
[root@node1 libmcrypt-2.5.8]# ./configure && make && make install

[root@node1 lamp]# tar fx mhash-0.9.9.9.tar.gz 
[root@node1 lamp]# cd mhash-0.9.9.9/
[root@node1 mhash-0.9.9.9]# ./configure && make && make install
[root@node1 mhash-0.9.9.9]# ln -s /usr/local/lib/* /usr/lib/
[root@node1 mhash-0.9.9.9]# ln -s /usr/local/bin/libmcrypt-config /usr/bin/


[root@node1 lamp]# tar fx mcrypt-2.6.8.tar.gz 
[root@node1 lamp]# cd mcrypt-2.6.8/
[root@node1 mcrypt-2.6.8]# vim /etc/profile
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
[root@node1 mcrypt-2.6.8]# source /etc/profile
[root@node1 mcrypt-2.6.8]# ldconfig 
[root@node1 mcrypt-2.6.8]# ./configure && make && make install

安装PHP
[root@node1 lamp]# yum install libxml2-devel -y
[root@node1 lamp]# cd /usr/local/mysql57/lib/
[root@node1 lib]# ln -s libmysqlclient.so.20.3.16 libmysqlclient_r.so


[root@node1 lamp]# tar fx php-5.5.38.tar.gz 
[root@node1 php-5.5.38]# ./configure --prefix=/usr/local/php5 --with-mcrypt --with-apxs2=/usr/local/httpd/bin/apxs --with-mysql=/usr/local/mysql57 --with-config-file-path=/usr/local/php5 --enable-mbstring

[root@node1 php-5.5.38]# make -j4 && make install 

调整PHP&APACHE
[root@node1 php-5.5.38]# cp php.ini-development /usr/local/php5/php.ini
[root@node1 php-5.5.38]# vim /usr/local/httpd/conf/httpd.conf
LoadModule php5_module        modules/libphp5.so

##添加一行
AddType application/x-httpd-php .php

##添加内容
DirectoryIndex index.html index.php


重启apache
apachectl stop
apachectl start

生成测试页面
test1.php
[root@node1 php-5.5.38]# vim /usr/local/httpd/htdocs/test1.php
        phpinfo();
?>

浏览器访问
http://localhost/test1.php

测试数据库
test2.php
        $link=mysql_connect('localhost','root','Qwer1234');
        if ($link) echo "mysql ok";
        mysql_close();
?>


部署论坛
[root@node1 lamp]# yum install unzip zip -y 
[root@node1 lamp]# unzip Discuz_7.2_FULL_SC_UTF8.zip 
[root@node1 lamp]# cp -r /root/lamp/Discuz_7.2_FULL_SC_UTF8/upload/ /usr/local/httpd/htdocs/bbs
[root@node1 bbs]# chown -R daemon templates/ attachments/ forumdata/ uc_client/data/cache/ config.inc.php 
[root@node1 bbs]# vim /usr/local/php5/php.ini 
short_open_tag = On
重启apache
localhost/bbs/install

[root@node1 lamp]# tar fx phpMyAdmin-4.5.5-all-languages.tar.gz 
[root@node1 lamp]# mv phpMyAdmin-4.5.5-all-languages /usr/local/httpd/htdocs/phpMyAdmin
[root@node1 lamp]# cd /usr/local/httpd/htdocs/phpMyAdmin/
[root@node1 phpMyAdmin]# cp config.sample.inc.php config.inc.php 

localhost/phpMyAdmin


#####################
如果报错 2002-没有文件或目录
修改config.inc.php
$cfg['Servers'][$i]['host'] = 'localhost';
改为
$cfg['Servers'][$i]['host'] = '127.0.0.1';

flush privileges;

 

 

 

 

 

 安装apache

相关内容

热门资讯

“国潮范”闪耀世运,巴蜀魅力璀...   蜀绣飞针,绣出芙蓉叠影  竹编经纬,勾勒山水清韵  青铜不语,叩响古蜀秘境  川剧变脸,刹那烟火...
(抗战胜利80周年)访台湾雾峰...   在台湾台中市,有一处具百余年历史的建筑群——雾峰林家宅园。这里不仅是知名望族居所,也记录着雾峰林...
赏古乐、做扎染……这个暑假沉浸...   眼下正值暑期,各地依托非遗场馆和资源,开展内容丰富的传统文化体验、普及活动,让人们在沉浸式体验中...
小“票根”如何成为激活消费的“...   原标题:小“票根”成为“金钥匙”(新视窗·新供给引领新消费新需求)  在江苏南京溧水区天生桥景区...
【世界说】美国学者:于美国35...   中国日报网8月6日电 澳大利亚“对话”新闻网(The Conversation)4日刊发文章称,...
铭记历史 缅怀先烈 | 红色底...   央视网消息:铭记历史、缅怀英烈,今天(8月6日)的《抗日根据地·今昔巨变》系列报道,我们聚焦鄂豫...
决胜“十四五” 打好收官战|路...   交通,是经济发展的强劲引擎,也是联通万家的民生通途。  “十四五”期间,我国“6轴7廊8通道”国...
丈夫因为没吃到鸡蛋不停抱怨 最...   四川一女子做了一大桌菜,丈夫因鸡蛋被侄子吃了,没吃到鸡蛋喋喋不休抱怨,最终女子崩溃掀桌。(编辑 ...
女子商场掀门帘的瞬间 小偷从背...   8月6日(发布),两女子在商场门口趁顾客掀帘子从背后2秒就偷走手机,目前失主已报案。(编辑:杨杨...
聚焦暑期安全:警惕不法分子利用...   原标题:租借学生微信号、盗取儿童电话卡、以“兼职”名义诱导拨打诈骗电话  警惕!不法分子利用中小...