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

相关内容

热门资讯

​税务稽查补税的账务处理规范 税务稽查补税的账务处理规范一、补缴增值税的会计分录本年度正常的补缴增值税:会计分录为:借:应交税费-...
新疆的冬天亚克西丨从雪场滑到大...   石榴云/新疆日报讯 12月23日18时许,乌鲁木齐县板房沟镇八家户村全季草莓采摘基地迎来了当天最...
视频丨外商投资有信心 能源建...   国家发展改革委、商务部24日发布《鼓励外商投资产业目录(2025年版)》。新版目录将自2026年...
视频丨日本计划加速向他国供武 ...   日本外务大臣茂木敏充12月23日在记者会上公布了2026财年外务省预算草案。草案显示,2026财...
闪评 | 美国消费者信心指数连...   美国研究机构世界大型企业研究会12月23日发布的初步调查数据显示,由于对商业环境看法负面,对就业...
2025年终经济观察|激活有效...   新华社北京12月24日电 题:激活有效投资 打开经济发展新空间  开栏的话:  2025年是“十...
守护每一个求学梦想(大数据观察... 制图:张丹峰 数据来源:教育部  学生资助事关教育公平和民生福祉。“十四五”时期,“全学段覆盖、全流...
河北邯郸市联合调查组发布情况通...   12月24日,河北邯郸市联合调查组发布情况通报——  2025年12月23日,媒体刊发“顾客称从...
数说绿色发展成绩单 “十四五”...   央视网消息:我国是草原大国,面积近40亿亩,约占国土面积27%,位居世界首位。记者12月23日从...