mysql 必须安装php_非root模式下安装mysql php小记
假设你的home目录为/home/work
mysql-server 安装
1. 下载mysql.tar.gz
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.17.tar.gz
2. 下载cmake [5.5及以上的版本需要用cmake进行安装]
cmake 官网下载 http://cmake.org/cmake/resources/software.html
wget http://www.cmake.org/files/v2.8/cmake-2.8.12.2-Linux-i386.tar.gz
解压 tar -zxvf cmake-2.8.12.2-Linux-i386.tar.gz
无需编译 直接使用 cmake-2.8.12.2-Linux-i386/bin/cmake
3. 安装mysql
1) tar -zxvf mysql-5.6.17.tar.gz
2) cd mysql-5.6.17
3) /home/work/cmake-2.8.12.2-Linux-i386/bin/cmake -DCMAKE_INSTALL_PREFIX=/home/work/local/mysql -DMYSQL_DATADIR=/home/work/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_UNIX_ADDR=/home/work/tmp/mysqld.sock -DWITH_INNOBASE_STORAGE_ENGINE=1
注意: 路径尽量使用绝对路径。
4) make ; make install
4. 启动
/home/work/local/mysql/scripts/mysql_install_db --user=work --basedir=/home/work/local/mysql --datadir=/home/work/local/mysql/data --no-defaults
运行mysql_install_db以后会有相应的启动提示 按照提示结合日志即可启动,也可以按照我下面写的方法。
/home/work/local/mysql/scripts/mysql_install_db --defaults-file=/home/work/local/mysql/my.cnf --datadir=/home/work/local/mysql/data/ --basedir=/home/work/local/mysql/
touch /home/work/tmp/mysqld.sock 注意: 这个文件是你在cmake编译时候写的 -DMYSQL_UNIX_ADDR=/home/work/tmp/mysqld.sock
另外如果 3306已经被其他mysql 占用 则要修改 /home/work/local/mysql/my.cnf 的port为 其他端口
/home/work/local/mysql/bin/mysqld_safe --defaults-file=/home/work/local/mysql/my.cnf & [注意这里要指定my.cnf否则会使用默认的/etc/my.cnf]
/home/work/local/mysql/bin/mysqladmin -u root password '123456'
5. 使用 /home/work/local/mysql/bin/mysql -uroot -p123456 使用
1) 如果报错 ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 111
可能是你使用了其他端口 需要在链接的时候指定端口 /home/work/local/mysql/bin/mysql -uroot -p123456 -P3307
2)如果报错,没有权限ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
那么是你需要添加该用户 或者 是为这个用户授权
关于授权
默认是有一个 root@localhos的账户, 一般我们是为了支持其他机器访问的话需要加 root@%的账户和 root@本机名称的账户.
步骤就是
create user 'root'@'%' identified by '123456'
create user 'root'@'***.**.com' identified by '123456'
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'***.**.com' IDENTIFIED BY '123456';
FLUSH PRIVILEGES;
注意精确匹配的优先级要高于%这种模糊匹配, 而且有时候-hip会解析成-hhost名称 这样要看root@host名称是否有授权.
添加用户 可以使用add user 命令 也可以直接在mysql.user中添加这个用户. 比如: create user root@localhost identified by '123456';
授权需要用grant 命令 如:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
PHP安装
1. 下载
官网列表地址 http://www.php.net/downloads.php
wget http://tw1.php.net/get/php-5.3.28.tar.gz/from/this/mirror
tar -zxvf php-5.3.28.tar.gz
cd php-5.3.28
2. 编译安装
指定 mysql lib路径
vi .bash_profile,添加:
MYSQL_LIB='/home/work/mysql/lib'
export LD_LIBRARY_PATH=$MYSQL_LIB:$LD_LIBRARY_PAT
./configure --prefix=/home/work/bin/php --with-mysql=/home/work/local/mysql --with-pdo-mysql=/home/work/local/mysql --with-config-file-path=/home/work/etc --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-sysvshm --enable-sysvmsg--enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-mbstring --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-sockets --with-xmlrpc --enable-zip --enable-soap --enable-exif --enable-calendar --enable-wddx --enable-pcntl
其中 支持mysql --with-mysql --with-pdo-mysql 要填入 mysql 的安装路径(不是mysql客户端可执行脚本)
make
make install
--with-config-file-path=/home/work/etc 指定php.ini的目录
另外一个机器多个PHP,编译扩展要注意
1. phpize php-config用对应的
2. php.ini 位置 (--with-config-file-path) 要正确
3. extentsion_dir是否指定 最好全路径
貌似写了--with-mysql --with-pdo-mysql 最终还是没装上mysql的扩展,
直接安装扩展 通过Phpzie 有报错
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
查了下解决办法是
wget http://sourceforge.net/projects/re2c/files/re2c/0.13.5/re2c-0.13.5.tar.gz/download
tar zxf re2c-0.13.5.tar.gz && cd re2c-0.13.5
./configure
make && make install
然后再去编译安装Fileinfo,就不会报re2c的错误了
但是 安装时又报错没有 /usr/bin 下的权限。
崩溃。
用别的办法
使用php包中自带的ext
cd ./php-5.2.10/ext/mysql
/home/work/local/php/bin/phpize
./configure --with-php-config=/home/work/local/php/bin/php-config --with-mysql=/home/work/local/mysql/
// --with-mysql=/home/work/local/mysql/ 这个到现在还没明白到底是为什么 如果没有安装mysql-server是不是需要特意安装一个mysql-client呢? 有待考证
make
make install
最后 提示
Installing shared extensions: /home/work/local/php/lib/php/extensions/no-debug-non-zts-20060613/
cp /home/work/local/php/lib/php/extensions/no-debug-non-zts-20060613/mysql.so ../
把扩展放到 上一级目录 /home/work/local/php/lib/php/extensions/ 下 并把 /home/work/local/php/lib/php/extensions/配置为PHP的extention_dir
之后修改PHP.ini
1. extension_dir = "/home/work/local/php/lib/php/extensions/
2. 添加 extension=mysql.so
如果直接在cli命令下运行的话 不用重启任何服务 直接/home/work/local/php/bin/php -i 发现有mysql扩展的信息了
如果是apache php-cli 之类的 可能就需要 重启 apache和php-fpm才能生效。
其他扩展类似。
另: php -i可以得到 php.ini的路径 如果这个路径下没有配置 要从源码包拷一份php.ini过来 并进行配置
参考博客地址
http://www.cnblogs.com/ahomer/archive/2012/11/23/2783814.html
mysql 必须安装php_非root模式下安装mysql php小记相关推荐
- 安装cuda 非root_linux非root用户下安装软件,搭建生产环境
之前的用实验室的服务器,因为某些原因,使用的用户没有root权限.linux的非root用户很多软件无法安装,非常的不方便.我的方法是使用brew来代替系统的包管理工具.brew是最先用在mac上的包 ...
- 非uefi模式安装linux,UEFI启动模式下安装Ubuntu 16.04教程
前言 最近常帮人安装Ubuntu,也算积累了一些经验.这篇博文主要谈一谈如何在UEFI启动模式下正确安装Ubuntu 16.04,以形成Windows 10和Ubuntu 16.04的双系统. 随着U ...
- zzw原创_非root用户下安装nginx
想自己安装nginx,又不相用到root用户. 非root用户下(本文为用户bdctool)来ngnix安装,要依赖pcre库.zlib库等, 1. 下载依赖包:下载地址 pcre(www.pcre. ...
- Linux服务器非root用户下安装CUDA11.1和cudnn到指定目录
(适用于服务器上管理员已安装好显卡驱动或已安装的CUDA版本无法满足自己要求) 1.准备工作 首先查看自己服务器系统的信息 uname -a lsb_release -a 这是我的服务器的信息 然后根 ...
- python root_python在非root权限下的安装方法
以前在使用Python的时候,都是使用root用户安装好的全局python,现在,因为root用户安装的Python版本太低,同时自己没有root权限去对全局Python升级,所以要在非root用户下 ...
- linux是不是在根目录下安装的软件其它用户就可以使用,[转载]Linux下非root用户如何安装软件...
[转载]Linux下非root用户如何安装软件 这是本人遇到的实际问题,之前用到的所有机器,无论是自己的PC还是云服务器,root权限都是妥妥的,但是现在发现实验室的服务器原来自己并没有root权限2 ...
- linux系统下安装pfam数据库中hmmer软件以及python3非root用户的安装
linux系统下安装pfam数据库中hmmer软件以及python3非root用户的安装 http://hmmer.org/从该链接下载源,其中有Userguide.pdf 下载,解压缩并切换目录 之 ...
- Linux 下非 root 用户 Conda 安装生物信息 R 软件包 MetaboAnalystR 演示
(首发地址:学习日记 https://www.learndiary.com/2022/06/metaboanalystr/ ) 前些天演示了一下 Linux 下非 root 用户 Conda 安装生 ...
- RHEL6.1在字符模式下安装图形界面
刚开始玩linux的时候老是会出现这样那样的不可预知的问题,在装系统的过程中也进常会忘了装图形界面. 当等了几十分钟后终于可以体验到全新的linux时出现在我们面前的却是一个经典的黑色背景和纯字符的界 ...
最新文章
- 统治未来的离散式神经网络详解
- 010 Android之逆向入门
- 2007年10月14日的日记
- 【转】Microsoft Cloud全新认证体系介绍
- bex64 java 贴吧,Windows Web Server 2008 R2 x64上的BEX错误
- java进制转换所有方法_Java进制转换方法整理
- 1.定义ddos僵尸网络
- mysql localhost值_jdbc:mysql://localhost:3306/mysql这句话中localhost具体指什么的localhost?能修改么?在哪里配置的?...
- Elasticsearch聚合学习之二:区间聚合
- cocos2d-x 4.0 学习之路(七)场景切换
- 2015年HEVC解码器组个人工作总结
- 微信小程序车牌组件代码
- python 通达信板块_通达信如何自定义选股,使用python在通达信里面选股
- mysql 备用字段_MySql 命令大全(转载备用)
- el-checkbox的坑(点击全选状态改变了但是不生效)
- 使用ros标定鱼眼相机
- Android切换深色模式导致布局字体变小的解决方案
- 网管随笔04--【MADC的另类安装与SQL的完全卸载】
- linux usb can驱动开发,linux驱动编写之十 USB初探
- 嵌入式系统移植三部曲 李炎朔