[关闭]
@Great-Chinese 2017-03-03T05:34:52.000000Z 字数 13858 阅读 850

LAMP架构搭建与优化

LAMP架构搭建与优化


1.1 Mysql安装

1:下载mysql到/usr/local/src/

  1. cd /usr/local/src
  2. wget http://syslab.comsenz.com/downloads/linux/mysql-5.5.52-linux2.6-x86_64.tar.gz

2:解压

  1. tar -zxvf mysql-5.5.52-linux2.6-x86_64.tar.gz
  2. du -sh mysql-5.5.52-linux2.6-x86_64.tar.gz # 查看此文件的大小

3:建立mysql用户,不创建家目录

  1. useradd -s /sbin/nologin -M mysql
  2. ls /home/ #查看创建了的用户

4:把解压完的数据移动到/usr/local/mysql

  1. mv mysql-5.5.52-linux2.6-x86_64 /usr/local/mysql

5:初始化数据库

  1. cd /usr/local/mysql/
  2. mkdir -p /data/mysql # 创建数据目录
  3. chown -R mysql:mysql /data/mysql # 修改目录所属人为mysql
  4. ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql #初始化数据库
  5. echo $?

6:拷贝配置文件

  1. cd support-files/ #数据库辅助文件
  2. ls
  3. cp my-large.cnf /etc/my.cnf
  4. vim /etc/my.cnf

7:拷贝启动脚本文件

  1. ls /etc/init.d/
  2. cp mysql.server /etc/init.d/mysqld

8:修改启动脚本

  1. vim /etc/init.d/mysqld
  2. basedir=/usr/local/mysql
  3. datadir=/data/mysql

9:把启动脚本加入系统服务项,并设定开机启动,启动mysql

  1. chkconfig --add mysqld
  2. chkconfig mysqld on
  3. /etc/init.d/mysqld start

10:检查mysql是否启动

  1. ps aux |grep mysql
  2. netstat -lnp |grep mysql

1.2 Apache编译安装

1:下载httpd到/usr/local/src/

  1. cd /usr/local/src
  2. wget http://syslab.comsenz.com/downloads/linux/httpd-2.2.31.tar.gz

2 : 解压

  1. tar -zxvf httpd-2.2.31.tar.gz

3 : 配置编译参数

  1. cd httpd-2.2.31
  2. #编译参数如下
  3. ./configure --prefix=/usr/local/apache2 --with-included-apr --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --with-pcre

--prefix 指定安装到哪里,
--enable-so 表示启用DSO [1]
--enable-deflate=shared 表示共享的方式编译deflate,后面的参数同理。

如果这一步你出现了这样的错误:
error: mod_deflate has been requested but can not be built due to prerequisite failures
解决办法是:

  1. yum install -y zlib-devel

为了避免在make的时候出现错误,所以最好是提前先安装好一些库文件:

  1. yum install -y pcre pcre-devel apr apr-devel

4:编译

  1. make
  2. echo $? #可检查make命令是否正确,值为0才是正确的

5:安装

  1. make install
  2. echo $? # 可检查make install命令是否正确,值为0才是正确的

6 : 启动,关闭,重启

  1. /usr/local/apache2/bin/apachectl start
  2. /usr/local/apache2/bin/apachectl stop
  3. /usr/local/apache2/bin/apachectl restart # 先杀死进程,再重新开启新的进程
  4. /usr/local/apache2/bin/apachectl graceful # 重新加载新的配置文件,原进程还在

7 : 检查apache是否启动

  1. ps aux |grep httpd

8 : 相关选项

  1. /usr/local/apache2/bin/apachectl -M # 列出动态模块
  2. /usr/local/apache2/bin/apachectl -l # 列出静态模块
  3. ls /usr/local/apache2/modules # 查看动态共享模块,此文件是单独的
  4. ls /usr/local/apache2/bin/httpd # 查看静态模块
  5. /usr/local/apache2/bin/apachectl -t # 检测配置文件有没有错误
  6. ls /usr/local/apache2/conf/httpd.conf # 查看配置文件
  7. ./configure --help |less # 查看相关工作模式

1.3 php编译安装

1 : 下载php到/usr/local/src/

  1. cd /usr/local/src
  2. wget http://am1.php.net/distributions/php-5.4.36.tar.bz2

2 : 解压

  1. tar -jxvf php-5.4.36.tar.bz2

3 : 配置编译参数

  1. cd php-5.4.36
  2. ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-libxml-dir --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-zlib-dir --with-bz2 --with-openssl --with-mcrypt --enable-soap --enable-gd-native-ttf --enable-mbstring --enable-sockets --enable-exif --disable-ipv6
  3. # 错误1
  4. configure: error: xml2-config not found. Please check your libxml2 installation.
  5. yum install -y libxml2-devel
  6. # 错误2 configure: error: Cannot find OpenSSL's <evp.h>
  7. yum install -y openssl openssl-devel
  8. # 错误 3
  9. checking for BZip2 in default path... not found
  10. configure: error: Please reinstall the BZip2 distribution
  11. yum install -y bzip2 bzip2-devel
  12. # 错误 4
  13. configure: error: png.h not found.
  14. yum install -y libpng libpng-devel
  15. # 错误 5
  16. configure: error: freetype.h not found.
  17. yum install -y freetype freetype-devel
  18. # 错误 6
  19. configure: error: mcrypt.h not found. Please reinstall libmcrypt.
  20. rpm -ivh http://www.aminglinux.com/bbs/data/attachment/forum/month_1211/epel-release-6-7.noarch.rpm
  21. yum install -y libmcrypt-devel
  22. 因为centos6.x 默认的yum源没有libmcrypt-devel 这个包,只能借助第三方yum源。

4:编译

  1. make

5:安装

  1. make install
  2. echo $? #查看安装是否正确

6:拷贝配置文件

  1. cp php.ini-production /usr/local/php/etc/php.ini

8:相关选项

  1. ls /usr/local/php
  2. ls /usr/local/apache2/modules
  3. /usr/local/apache2/modules
  4. /usr/local/php/bin/php -m # 查看模块
  5. /usr/local/php/bin/php -i # 查看相关的配置

1.4 测试php解析

1:新建php文件

  1. cd /usr/local/apache2/htdocs
  2. # php 编辑格式
  3. vim 2.php
  4. <?php
  5. echo akakakakka;
  6. ?>

2:测试是否正确解析php

  1. vim /usr/local/apache2/conf/httpd.conf # 1.首先修改Apache主配置文件
  2. # 找到:AddType application/x-gzip .gz .tgz 在该行下面添加:
  3. AddType application/x-httpd-php .php
  4. # 找到:DirectoryIndex index.html 将该行改为:
  5. DirectoryIndex index.html index.php
  6. /usr/local/apache2/bin/apachectl -t # 2.检测apache2配置是否有问题
  7. /usr/local/apache2/bin/apachectl graceful # 3.没有问题就重启加载apache2

3:编辑info.php文件

  1. # info.php 编辑格式
  2. vim info.php
  3. <?php
  4. phpinfo();
  5. ?>
  6. # 查看编译包
  7. /usr/local/php/bin/php -i|less
  8. cat /usr/local/apache2/build/config.nice
  9. ls /usr/local/php/etc
  10. #复制
  11. cp /usr/local/src/php-5.4.36/php.ini-production /usr/local/php/etc/php.ini
  12. /usr/local/apache2/bin/apachectl graceful
  13. curl 192.168.31.127/info.php
  14. curl 192.168.31.127/1.txt
  15. curl 192.168.31.127/index.html

1.5:安装Discuz

1:下载Discuz到/data/www

  1. mkdir /data/www #作为discuz的根目录
  2. cd /data/www
  3. wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip

2: 解压

  1. unzip Discuz_X3.2_SC_GBK.zip
  2. mv upload/* ./ #
  3. rm -rf readme/ utility/ upload/ Discuz_X3.2_SC_GBK.zip #
  4. ps aux |grep httpd #查看httpd进程,如果没有启动就要重启

3:

  1. vim /usr/local/apache2/conf/httpd.conf
  2. Include conf/extra/httpd-vhosts.conf # 把此行调用起来
  3. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf #编辑虚拟主机配置文件如下:
  4. <VirtualHost *:80>
  5. DocumentRoot "/data/www"
  6. ServerName www.test.com
  7. ServerAlias www.aaa.com
  8. # ErrorLog "logs/dummy-host.example.com-error_log"
  9. # CustomLog "logs/dummy-host.example.com-access_log" common
  10. </VirtualHost>
  11. # 查看虚拟主机默认文件是否正确
  12. /usr/local/apache2/bin/apachectl -t

4:安装Discuz

  1. # 本地生效
  2. vim /etc/hosts
  3. ping www.baidu.com
  4. # windows 生效
  5. C:\Windows\System32\drivers\etc\HOSTS # 在此文件中加入如下字符
  6. 192.168.31.127 www.test.com www.aaa.com
  7. # 如果网址被Forbidden,编辑如下文件
  8. vim /usr/local/apache2/conf/httpd.conf
  9. Deny from all 改成 Allow from all
  10. /usr/local/apache2/bin/apachectl -t # 检测配置文件是否出错
  11. /usr/local/apache2/bin/apachectl restart # 重启
  12. ps aux |grep http
  13. # 修改目录的所属组为daemon
  14. chown -R daemon config data uc_client/data uc_server/data
  15. #如何配置mysql的PATH
  16. rpm -qf /usr/bin/mysql
  17. vim /etc/profile.d/path.sh # 编辑此文件,修改文件如下:
  18. export PATH=$PATH:/usr/local/mysql/bin
  19. # 让修改的配置文件生效
  20. source /etc/profile.d/path.sh
  21. #创建用户,安装数据库
  22. mysql
  23. mysql> create database discuz;
  24. mysql> grant all on discuz.* to ''melody'@'localhost' identified by 'melodylinux'';

1.6 Apache用户认证(即可文件加密)

1:创建目录或文件

  1. mkdir abc
  2. cd abc
  3. cp /etc/passwd ./12.txt

2:修改虚拟主机配置文件

  1. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容到Directory内
  2. <VirtualHost *:80>
  3. DocumentRoot "/data/www"
  4. ServerName www.test.com
  5. ServerAlias www.aaa.com
  6. # ErrorLog "logs/dummy-host.example.com-error_log"
  7. # CustomLog "logs/dummy-host.example.com-access_log" common
  8. <Directory /data/www/abc/>
  9. AllowOverride AuthConfig
  10. AuthName "aaaaa"
  11. AuthType Basic
  12. AuthUserFile /data/.htpasswd
  13. require valid-user
  14. </Directory>
  15. </VirtualHost>
  16. # 修改存放用户与用户密码的文件
  17. htpasswd -c /data/.htpasswd user1
  18. cat /data/.htpasswd
  19. htpasswd /data/.htpasswd user2
  20. cat /data/.htpasswd
  21. # 检查配置文件是否正确
  22. apachectl -t
  23. # 重启
  24. apachectl graceful

3:如何配置apache的PATH

  1. vim /etc/profile.d/path.sh # 编辑此文件,修改文件如下:
  2. export PATH=$PATH:/usr/local/mysql/bin:/usr/local/apache2/bin
  3. # 让修改的配置文件生效
  4. source /etc/profile.d/path.sh

1.7 默认虚拟主机(即限制访问域名)

1:在Windows下加入其它域名

  1. C:\Windows\System32\drivers\etc\HOSTS # 在此文件中加www.222.com等字符
  2. 192.168.31.127 www.test.com www.aaa.com www.222.com

2:修改虚拟主机配置文件

  1. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加如下内容
  2. <VirtualHost *:80>
  3. DocumentRoot "/tmp/123"
  4. ServerName 1111.com
  5. </VirtualHost>

3:创建空目录,并修改权限为600,重启即可

  1. mkdir /tmp/123
  2. chmod 600 /tmp/123
  3. apachectl -t
  4. apachectl restart

1.8 域名301跳转

1:修改虚拟主机配置文件

  1. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
  2. #增加内容如下:
  3. # ErrorLog "logs/dummy-host.example.com-error_log"
  4. # CustomLog "logs/dummy-host.example.com-access_log" common
  5. <IfModule mod_rewrite.c>
  6. RewriteEngine on
  7. RewriteCond %{HTTP_HOST} ^www.aaa.com$ [OR]
  8. RewriteCond %{HTTP_HOST} ^www.bbb.com$
  9. RewriteRule ^/(.*)$ http://www.test.com/$1 [R=301,L]
  10. </IfModule>
  11. # 检查配置文件是否错误
  12. apachectl -t
  13. # 重启
  14. apachectl restart

2:

  1. curl -x192.168.31.127:80 www.aaa.com/adaldkladka -I
  2. curl -x192.168.31.127:80 www.bbb.com/adaldkladka -I

1.9 Apache日志切割

1 :如何切割日志

  1. # 编辑日志格式
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 打开如下两行文字
  3. ErrorLog "logs/test.com-error_log"
  4. CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/test.com-access_%Y%m%d-log 86400" combined
  5. # 检查配置文件是否正确
  6. apachectl -t
  7. # 重新加载
  8. apachectl restart
  1. cd /usr/local/apache2/logs
  2. cat test.com-access_log
  3. less test.com-access_log
  4. wc -l test.com-access_log
  5. date -s "2016-11-25 01:01:00" # 修改日志的显示时间
  6. vim /usr/local/apache2/conf/httpd.conf # 可以在主配置文件中查看日志格式
  7. ls /usr/local/apache2/logs # 查看日志的文件包

2.0 Apache 不记录指定文件类型的日志

  1. # 编辑日志格式
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. ErrorLog "logs/test.com-error_log"
  4. SetEnvIF Request_URI ".*\.gif$" image-request
  5. SetEnvIF Request_URI ".*\.jpg$" image-request
  6. SetEnvIF Request_URI ".*\.png$" image-request
  7. SetEnvIF Request_URI ".*\.bmp$" image-request
  8. SetEnvIF Request_URI ".*\.swf$" image-request
  9. SetEnvIF Request_URI ".*\.js$" image-request
  10. SetEnvIF Request_URI ".*\.css$" image-request
  11. CustomLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/test.com-access_%Y%m%d-log 86400" combined env=!image-request
  12. # 检查配置文件是否正确
  13. apachectl -t
  14. # 重启
  15. apachectl restart
  16. #进入logs目录下
  17. cd /usr/local/apache2/logs
  18. less test.com-access_20161125-log

2.1 Apache 配置静态缓存(节省带宽)

  1. # 修改虚拟主机配置文件
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. <IfModule mod_expires.c>
  4. ExpiresActive on
  5. ExpiresByType image/gif "access plus 1 days"
  6. ExpiresByType image/jpeg "access plus 24 hours"
  7. ExpiresByType image/png "access plus 24 hours"
  8. ExpiresByType text/css "now plus 2 hours"
  9. ExpiresByType application/x-javascript "now plus 2 hours"
  10. ExpiresByType application/x-shockwave-flash "now plus 2 hours"
  11. ExpiresDefault "now plus 0 min"
  12. </IfModule>
  13. # 检查配置文件是否正确
  14. apachectl -t
  15. # 重启
  16. apachectl graceful
  17. # 查看论坛logo信息
  18. curl -x127.0.0.1:80 'http://www.test.com/static/image/common/logo.png' -I

2.2 Apache配置防盗链(防止网站,图片被盗用)

  1. # 修改虚拟主机配置文件
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. SetEnvIfNoCase Referer "^http://.*\.test\.com" local_ref
  4. SetEnvIfNoCase Referer ".*\.aminglinux\.com" local_ref
  5. <filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png|js|css)">
  6. Order Allow,Deny
  7. Allow from env=local_ref
  8. </filesmatch>
  9. # 检查配置文件是否正确
  10. apachectl -t
  11. Syntax OK
  12. # 重启
  13. apachectl restart

2.3 Apache访问控制

  1. # 修改虚拟主机配置文件
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. <Directory "/data/www">
  4. Options None
  5. AllowOverride None
  6. Order allow,deny
  7. Allow from all
  8. Deny from 127.0.0.1
  9. </Directory>
  10. # 检查配置文件是否正确
  11. apachectl -t
  12. Syntax OK
  13. # 重启
  14. apachectl restart
  15. #
  16. curl -x127.0.0.1:80 -I www.test.com
  17. curl -x192.168.31.127:80 -I www.test.com

限制指定的admin

  1. # 修改虚拟主机配置文件
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. <filesmatch "(.*)admin(.*)">
  4. Order deny,allow
  5. Deny from all
  6. Allow from 127.0.0.1
  7. </filesmatch>
  8. # 检查配置文件是否正确
  9. apachectl -t
  10. Syntax OK
  11. # 重启
  12. apachectl restart
  13. #
  14. curl -x192.168.31.127:80 -I www.test.com/admin.php
  15. curl -x127.0.0.1:80 -I www.test.com/admin.php

2.4 Apache禁止解析php(安全设置)

A:如何禁止解析php

  1. # 修改虚拟主机配置文件
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. <Directory /data/www/data>
  4. php_admin_flag engine off #关闭php的解析引擎配置
  5. <filesmatch "(.*)php">
  6. Order deny,allow
  7. Deny from all
  8. Allow from 127.0.0.1
  9. </filesmatch>
  10. </Directory>
  11. # 检查配置文件是否正确
  12. apachectl -t
  13. Syntax OK
  14. # 重启
  15. apachectl restart

B:如何查看论坛里上传的图片地址

  1. cd/data/www/data/attachment/forum/201611/25/210441zmzm36g56mwo6g1k.jpg

C:编辑info文件

  1. vim info.php
  2. <?php
  3. phpinfo();
  4. ?>
  5. apachectl -t
  6. apachectl restart
  7. curl -x127.0.0.1:80 www.test.com/data/info.php #查看info文件是否能解析

2.5 Apache 禁止指定user_agent

A:用Rewrite来禁止user_agent

  1. # 修改虚拟主机配置文件
  2. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  3. RewriteCond %{HTTP_USER_AGENT} ^.*curl.* [NC,OR] # 定义条件
  4. RewriteCond %{HTTP_USER_AGENT} ^.*chrome* [NC]
  5. RewriteRule .* - [F]
  6. # 检查配置文件是否正确
  7. apachectl -t
  8. Syntax OK
  9. # 重启
  10. apachectl restart
  11. curl -x192.168.31.127:80 www.test.com/forum.php -I #查看curl是否被禁止

2.6 Apache通过rewrite限制某个目录

  1. #进入要限制的某个目录下
  2. cd /data/www
  3. mkdir tmp
  4. vim 12.txt
  5. # 修改虚拟主机配置文件
  6. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf # 增加内容如下:
  7. RewriteCond %{REQUEST_URI} ^.*/tmp/.* [NC] # 定义条件
  8. RewriteRule .* - [F]
  9. # 检查配置文件是否正确
  10. apachectl -t
  11. Syntax OK
  12. # 重启
  13. apachectl restart

2.7 php.ini配置文件详解

A:如何打开php的错误日志,并且不会泄漏网业信息

  1. ls /usr/local/php/etc/php.ini # 查看php的配置文件所在位置
  2. /usr/local/php/bin/php -i |head # 查看php的配置文件所在位置
  3. # 进入php.ini配置文件
  4. vim /usr/local/php/etc/php.ini
  5. # 配置disable_functions
  6. disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close
  7. # 配置错误日志
  8. display_errors = Off #如果是On,则会在网业面上显示出错误的信息,所以一般都要Off
  9. vim /data/www/forum.php #打开php脚本在第二行故意写错,如果是On,刷新网业时就会出来错误信息的提示
  10. # 打开php的错误日志
  11. log_errors = On
  12. # 定义error_log的所有路径
  13. error_log =/usr/local/php/logs/php_errors.log # 如果没有此目录,则须创建目录并修改权限为700
  14. mkdir /usr/local/php/logs
  15. chmod 777 /usr/local/php/logs
  16. # 配置日志的级别或格式
  17. error_reporting = E_ALL & ~E_NOTICE
  18. # 检查配置文件是否正确
  19. apachectl -t
  20. Syntax OK
  21. # 重启
  22. apachectl restart
  23. cat /usr/local/php/logs/php_errors.log #查看生成的错误日志

B:如何限制php与apache2的open_basedir

  1. # 限制php的open_basedir
  2. vim /usr/local/php/etc/php.ini
  3. open_basedir = /data/www:/tmp
  4. # 限制apache2的open_basedir
  5. vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
  6. open_basedir = /data/www:/tmp
  7. tail /usr/local/php/logs/php_errors.log # 查看错误日志

2.8 php扩展模块如何安装

a、查看php所加载的模块

  1. /usr/local/php/bin/php -m

b、进入源码安装包目录下的ext目录

  1. cd /usr/local/src/php-5.4.36/ext

c、进入需要安装的扩展模块,例如安装curl

  1. cd curl

d、执行命令

  1. # 如果提示autoconf Installation, 就是用yum安装autoconf,再执行该命令
  2. yum install -y autoconf
  3. /usr/local/php/bin/phpize

e、编译安装

  1. ./configure --with-php-config=/usr/local/php/bin/php-config
  2. make && make install

2.9 mysql配置讲解

  1. vim /etc/my.cnf # 编辑mysql配置文件
  2. mysql -uroot # 登陆mysql
  3. show variables; # 查看参数
  4. SHOW STATUS LIKE 'key_read%'; # 查看参数值
  5. www.aminglinux.com/bbs/thread-5758-1-1.html # MySQL调优网址

3.0 mysql的root密码重置

  1. mysqladmin -uroot password '123456' # 设置mysql密码
  2. mysql -uroot -p123456 # 用密码登陆mysql
  3. # 如果忘记密码,则需修改mysql配置文件
  4. vim /etc/my.cnf # 增加内容如下
  5. skip-grant
  6. # 重启
  7. /etc/init.d/mysqld restart
  8. # 更新密码
  9. use mysql
  10. update user set password=password('12345') where user='root';
  11. select * from user where user='root'\G;
  12. mysql -uroot -p12345

3.1 远程登陆mysql

  1. mysql -uroot -p12345 # 本地登陆mysql
  2. # 如何远程登陆mysql
  3. mysql> grant all on *.* to 'root'@'192.168.31.27' identified by '123aaa';
  4. mysql> user mysql
  5. mysql> select * from user where host='192.168.31.127'\G;
  6. mysql -uroot -h192.168.31.127 -P3306 -p123aaa
  7. mysql> select user(); # 查看当前用户是谁
  8. # 当本地有多个mysql时,可指定sock登陆
  9. mysql -uroot -S /tmp/mysql.sock -p

3.2 mysql常用操作-1

  1. mysql> show databases; # 查看有多少个库在mysql里
  2. mysql> use mysql # 切换库
  3. mysql> select database(); # 查看在那个库下
  4. mysql> select version(); # 查看当前版本
  5. mysql> select user(); # 查看当前用户是谁
  6. mysql> show tables; # 查看库里有多少张表

3.3 mysql常用操作-2

3.4 mysql备份与恢复

  1. # mysql备份库
  2. mysqldump -uroot -pmelody.com discuz > /data/discuz.sql
  3. # mysql恢复库
  4. mysql -uroot -pmelody.com discuz < /data/discuz.sql
  5. # mysql备份表
  6. mysqldump -uroot -pmelody.com discuz pre_forum_post > /data/post.sql
  7. # mysql恢复表,不需要加表名
  8. mysql -uroot -pmelody.com discuz > /data/post.sql
  9. # 备份与恢复时保持字符级一致
  10. mysqldump -uroot --default-character-set=gbk -pmelody.com discuz pre_forum_post > /data/post.sql
  11. mysql -uroot --default-character-set=gbk -pmelody.com discuz > /data/post.sql
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注