centos 源码安装mysql centos8官网下载教程
大家好,如果您还对centos 源码安装mysql不太了解,没有关系,今天就由本站为大家分享centos 源码安装mysql的知识,包括centos8官网下载教程的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
如何源码安装mysql
方法/步骤
1
[root@localhost soft]# groupadd mysql添加mysql标准组
[root@localhost soft]# useradd-g mysql mysql添加mysql用户并加到mysql组中
2
安装mysql
[root@localhost soft]# tar-zxvf mysql-5.5.45.tar.gz
[root@localhost mysql-5.5.46]# cmake-DCMAKE_INSTALL_PREFIX=/usr/local/mysql-DMYSQL_DATADIR=/usr/local/mysql/data-DSYSCONFDIR=/etc-DWITH_MYISAM_STORAGE_ENGINE=1-DWITH_INNOBASE_STORAGE_ENGINE=1-DWITH_MEMORY_STORAGE_ENGINE=1-DWITH_READLINE=1-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock-DMYSQL_TCP_PORT=3306-DENABLED_LOCAL_INFILE=1-DWITH_PARTITION_STORAGE_ENGINE=1-DEXTRA_CHARSETS=all-DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci
#-DCMAKE_INSTALL_PREFIX=/usr/local/mysql\#安装路径
#-DMYSQL_DATADIR=/usr/local/mysql/data\#数据文件存放位置
#-DSYSCONFDIR=/etc\#my.cnf路径
#-DWITH_MYISAM_STORAGE_ENGINE=1\#支持MyIASM引擎
#-DWITH_INNOBASE_STORAGE_ENGINE=1\#支持InnoDB引擎
#-DWITH_MEMORY_STORAGE_ENGINE=1\#支持Memory引擎
#-DWITH_READLINE=1\#快捷键功能(我没用过)
#-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock\#连接数据库socket路径
#-DMYSQL_TCP_PORT=3306\#端口
#-DENABLED_LOCAL_INFILE=1\#允许从本地导入数据
#-DWITH_PARTITION_STORAGE_ENGINE=1\#安装支持数据库分区
#-DEXTRA_CHARSETS=all\#安装所有的字符集
#-DDEFAULT_CHARSET=utf8\#默认字符
#-DDEFAULT_COLLATION=utf8_general_ci\#校验字符
3
修改目录所有者和所有组
[root@end mysql]# chown-R mysql:mysql.
4
初始化数据库
[root@end mysql]# scripts/mysql_install_db--user=mysql--datadir=/usr/local/mysql/data/
5
复制mysql服务启动配置文件(注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。)
[root@end mysql]# cp/usr/local/mysql/support-files/my-medium.cnf/etc/my.cnf
注册为服务
[root@end mysql]# cp/usr/local/mysql/support-files/mysql.server/etc/rc.d/init.d/mysqld
让chkconfig管理mysql服务
[root@end mysql]# chkconfig--add mysqld[root@end mysql]# chkconfig mysqld on
设置环境变量
在文件/etc/profile末尾添加
PATH=/usr/local/mysql/bin:$PATH
立即生效
[root@end mysql]# source/etc/profile
启动mysql服务
[root@end mysql]# service mysqld startStarting MySQL...
检查mysql服务是否启动
[root@end mysql]# netstat-tulnp|grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 24351/mysqld
修改mysql用户root密码
[root@end mysql]# mysql-uroot登录到mysql,首次登陆无密码
设置mysql密码
mysql> SET PASSWORD= PASSWORD('endmoon');
Query OK, 0 rows affected(0.00 sec)
用设置的密码登录
[root@end mysql]# mysql-u root-pEnter password: endmoon
若要设置root用户可以远程访问,执行
mysql> GRANT ALL PRIVILEGES ON*.* TO'root'@'192.168.1.20' IDENTIFIED BY'password' WITH GRANT OPTION;Query OK, 0 rows affected(0.00 sec)
配置防火墙
防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口
打开/etc/sysconfig/iptables,在-A INPUT-m state--state NEW-m tcp-p tcp--dport 22-j ACCEPT后面添加
-A INPUT-m state--state NEW-m tcp-p tcp--dport 3306-j ACCEPT
[root@end mysql]# service iptables restart
使更改的防火墙配置生效 iptables:将链设置为政策 ACCEPT:filter [确定]
iptables:清除防火墙规则: [确定]
iptables:正在卸载模块: [确定]
iptables:应用防火墙规则:
mysql数据库的安装到这里就结束了
如何在linux系统中centos7.6上面安装mysql数据库
安装mysql基本有三种办法:
1,源码编译。 2,二进制包方式安装 3, yum安装。
可以采用二进制包方式安装mysql,并进行优化配置。
1.安装之前,先创建mysql用户
[root@linuxprobe_nfs~]# useradd mysql-s/sbin/nologin-M
[root@linuxprobe_nfs~]# id mysql
uid=500(mysql) gid=500(mysql) groups=500(mysql)
2.软件包的下载及解压
[root@linuxprobe_nfs~]# mkdir/home/chenfan/tools-p
[root@linuxprobe_nfs~]# cd/home/chenfan/tools
在官网上下载mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs tools]# ls
mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs tools]# tar zxvf mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs tools]# ls
mysql-5.5.32-linux2.6-x86_64 mysql-5.5.32-linux2.6-x86_64.tar.gz
[root@linuxprobe_nfs local]# mv mysql-5.5.32-linux2.6-x86_64/usr/local/mysql-5.5.32
###免编译安装 mysql二进制包安装与配置实战记录
[root@linuxprobe_nfs local]# cd/usr/local
[root@linuxprobe_nfs local]# ln-s mysql-5.5.32 mysql
###此处的软链接为了版本升级提供了便利
3.初始化数据库
[root@linuxprobe_nfs local]# mysql/scripts/mysql_install_db--basedir=/usr/local/mysql/--datadir=/usr/local/mysql/data/--user=mysql
###此处如果初始化发生错误,删除data目录下的内容,rm-fr mysql/data/*,重新初始化。
4.生成MySQL配置文件
[root@linuxprobe_nfs local]# cd mysql
[root@linuxprobe_nfs mysql]# cp support-files/my-small.cnf/etc/my.cnf
5.授权管理文件
[root@linuxprobe_nfs~]# chown-R mysql:mysql/usr/local/mysql/
[root@linuxprobe_nfs~]# ls-ld/usr/local/mysql/
drwxr-xr-x. 13 mysql mysql 4096 Jun 24 17:21/usr/local/mysql/
6.设置科学的启动方式
[root@linuxprobe_nfs mysql]# cp support-files/mysql.server/etc/init.d/mysqld
[root@linuxprobe_nfs mysql]# chmod+x/etc/init.d/mysqld
[root@linuxprobe_nfs mysql]#/etc/init.d/mysqld start
Starting MySQL... SUCCESS!
[root@linuxprobe_nfs mysql]# chkconfig--add mysqld
[root@linuxprobe_nfs mysql]# chkconfig mysqld on
[root@linuxprobe_nfs mysql]# chkconfig--list mysqld
mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off
###设置开机自启动mysql
7.配置MySQL环境变量
[root@linuxprobe_nfs mysql]# echo'PATH=/usr/local/mysql/bin:$PATH'>>/etc/profile
[root@linuxprobe_nfs mysql]# source/etc/profile
[root@linuxprobe_nfs mysql]# echo$PATH
/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
###此处PATH路径的设置为了后续mysql命令的使用
8.mysql登陆与密码设置
[root@linuxprobe_nfs mysql]# mysql
centos5 源码安装Nginx + mysql + apache + php的方法
主要依照的是张宴的一篇博文《》,安装的软件是也是从他提供的列表中下载,这里都是tar.gz格式,如果更希望是rpm格式的话,提供一个网址《》这里列出了比较完全的下载包。
我安装的系统:Centos5
1、下载;
我安装的下载来自张宴博文下的地址,下载保存的是home下自己目录的一个文件夹下:
复制代码
代码如下:
cd/home/xuxx/software
wget
wget
wget
wget
wget
wget
wget
wget
wget
wget
wget
wget
wget
wget
2、准备编译安装环境,需要编译源码用到gc++
建议如果是新安装的系统,使用yum upgrade更新下系统。
复制代码
代码如下:
sudo-s
LANG=C
yum-y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel
glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel
openldap openldap-devel nss_ldap openldap-clients openldap-servers
注意:这里所有的命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
确保安装成功!才能正确使用编译。
3、安装:
一、安装PHP 5.2.8(FastCGI模式)
1、编译安装PHP 5.2.8所需的支持库:
1] libiconv库
复制代码
代码如下:
tar zxvf libiconv-1.13.tar.gz
cd libiconv-1.13/
./configure--prefix=/usr/local
make
make install
make clean
make distclean
cd../
make clean和make distclean都是删除安装过程中生成的缓存文件。当然如果你不介意放着也可以跳过这两步清理操作。
2]libmcrypt库
复制代码
代码如下:
tar zxvf libmcrypt-2.5.8.tar.gz
cd libmcrypt-2.5.8/
./configure
make
make install
make clean
make distclean
/sbin/ldconfig
cd libltdl/
./configure--enable-ltdl-install
make
make install
make clean
make distclean
cd
3] mhash库
复制代码
代码如下:
tar zxvf mhash-0.9.9.9.tar.gz
cd mhash-0.9.9.9/
./configure
make
make install
cd../
4]mcrypt库
注意:因为该库和libmcrypt有依赖性,所以在安装前必须知道libmcrypt,否则的话会出现:
错误
复制代码
代码如下:
checking for libmcrypt– version= 2.5.0…
***‘libmcrypt-config–version’ returned 2.4.0, but LIBMCRYPT(2.5.8)
*** was found! If libmcrypt-config was correct, then it is best
*** to remove the old version of LIBMCRYPT. You may also be able to fix the error
*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing
***/etc/ld.so.conf. Make sure you have run ldconfig if that is
*** required on your system.
*** If libmcrypt-config was wrong, set the environment variable LIBMCRYPT_CONFIG
*** to point to the correct copy of libmcrypt-config, and remove the file config.cache
*** before re-running configure
configure: error:*** libmcrypt was not found
是因为path的问题,所以执行:
复制代码
代码如下:
ln-s/usr/local/lib/libmcrypt.la/usr/lib/libmcrypt.la
ln-s/usr/local/lib/libmcrypt.so/usr/lib/libmcrypt.so
ln-s/usr/local/lib/libmcrypt.so.4/usr/lib/libmcrypt.so.4
ln-s/usr/local/lib/libmcrypt.so.4.4.8/usr/lib/libmcrypt.so.4.4.8
ln-s/usr/local/lib/libmhash.a/usr/lib/libmhash.a
ln-s/usr/local/lib/libmhash.la/usr/lib/libmhash.la
ln-s/usr/local/lib/libmhash.so/usr/lib/libmhash.so
ln-s/usr/local/lib/libmhash.so.2/usr/lib/libmhash.so.2
ln-s/usr/local/lib/libmhash.so.2.0.1/usr/lib/libmhash.so.2.0.1
ln-s/usr/local/bin/libmcrypt-config/usr/bin/libmcrypt-config
然后再安装:
复制代码
代码如下:
tar zxvf mcrypt-2.6.8.tar.gz
cd mcrypt-2.6.8/
/sbin/ldconfig
./configure
make
make install
cd../
二、安装mysql
复制代码
代码如下:
/usr/sbin/groupadd mysql
/usr/sbin/useradd-g mysql xxx
unzip mysql-5.1.33.zip
cd mysql-5.1.33/
./configure--prefix=/usr/local/webserver/mysql/--enable-assembler--with-extra-charsets=complex--enable-thread-safe-client--with-big-tables
--with-readline--with-ssl--with-embedded-server--enable-local-infile--with-plugins=innobase
make
make install
make clean
make distclean
chmod+w/usr/local/webserver/mysql
chown-R xxx:mysql/usr/local/webserver/mysql
cp support-files/my-medium.cnf.sh/usr/local/webserver/mysql/my.cnf
cd../
注意:这里编译./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
在最后一步拷贝的时候,我安装完在support-files下没有my-medium.cnf而只有my-medium.cnf.sh所以将这个文件拷贝过去。
@张宴原文:
附:以下为附加步骤,如果你想在这台服务器上运行MySQL数据库,则执行以下两步。如果你只是希望让PHP支持MySQL扩展库,能够连接其他服务器上的MySQL数据库,那么,以下两步无需执行。
①、以xxx用户帐号的身份建立数据表:
复制代码
代码如下:
/usr/local/webserver/mysql/bin/mysql_install_db--basedir=/usr/local/webserver/mysql--datadir=/usr/local/webserver/mysql/data--user=xxx
②、启动MySQL(最后的表示在后台运行)
复制代码
代码如下:
/bin/sh/usr/local/webserver/mysql/bin/mysqld_safe--defaults-file=/usr/local/webserver/mysql/my.cnf
3、编译安装PHP(FastCGI模式)
复制代码
代码如下:
tar zxvf php-5.2.8.tar.gz
gzip-cd php-5.2.8-fpm-0.5.10.diff.gz| patch-d php-5.2.8-p1
cd php-5.2.8/
./configure--prefix=/usr/local/webserver/php--with-config-file-path=/usr/local/webserver/php/etc--with-mysql=/usr/local/webserver/mysql
--with-mysqli=/usr/local/webserver/mysql/bin/mysql_config--with-iconv-dir=/usr/local--with-freetype-dir--with-jpeg-dir--with-png-dir--with-zlib
--with-libxml-dir=/usr--enable-xml--disable-rpath--enable-discard-path--enable-safe-mode--enable-bcmath--enable-shmop--enable-sysvsem
--enable-inline-optimization--with-curl--with-curlwrappers--enable-mbregex--enable-fastcgi--enable-fpm--enable-force-cgi-redirect
--enable-mbstring--with-mcrypt--with-gd--enable-gd-native-ttf--with-openssl--with-mhash--enable-pcntl--enable-sockets--with-ldap
--with-ldap-sasl
make ZEND_EXTRA_LIBS='-liconv'
make install
cp php.ini-dist/usr/local/webserver/php/etc/php.ini
cd../
注意:这里./configure命令是一行的而不能有换行符,如果是copy的时候,注意要去处该换行符
4、编译安装PHP5扩展模块--可选安装
复制代码
代码如下:
tar zxvf memcache-2.2.5.tgz
cd memcache-2.2.5/
/usr/local/webserver/php/bin/phpize
./configure--with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd../
tar jxvf eaccelerator-0.9.5.3.tar.bz2
cd eaccelerator-0.9.5.3/
/usr/local/webserver/php/bin/phpize
./configure--enable-eaccelerator=shared--with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd../
tar zxvf PDO_MYSQL-1.0.2.tgz
cd PDO_MYSQL-1.0.2/
/usr/local/webserver/php/bin/phpize
./configure--with-php-config=/usr/local/webserver/php/bin/php-config--with-pdo-mysql=/usr/local/webserver/mysql
make
make install
make clean
make distclean
cd../
tar zxvf ImageMagick.tar.gz
cd ImageMagick-6.5.1-2/
./configure
make
make install
make clean
make distclean
cd../
tar zxvf imagick-2.2.2.tgz
cd imagick-2.2.2/
/usr/local/webserver/php/bin/phpize
./configure--with-php-config=/usr/local/webserver/php/bin/php-config
make
make install
make clean
make distclean
cd../
5、修改php.ini文件
STRONG手工修改:/STRONG查找/usr/local/webserver/php/etc/php.ini中的extension_dir="./"
修改为extension_dir="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/"
并在此行后增加以下几行,然后保存:
extension="memcache.so"
extension="pdo_mysql.so"
extension="imagick.so"
再查找output_buffering= Off
修改为output_buffering= On
6、配置eAccelerator加速PHP:
mkdir-p/usr/local/webserver/eaccelerator_cache
vi/usr/local/webserver/php/etc/php.ini
按shift+g键跳到配置文件的最末尾,加上以下配置信息:
复制代码
代码如下:
[eaccelerator]
zend_extension="/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so"
eaccelerator.shm_size="128"
eaccelerator.cache_dir="/usr/local/webserver/eaccelerator_cache"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="300"
eaccelerator.shm_prune_period="120"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
修改配置文件:
vi/etc/sysctl.conf
kernel.shmmax= 134217728
然后执行以下命令使配置生效:/sbin/sysctl-p
以下的步骤和张宴步骤中一样配置,不再赘诉