16、lnmp_mysql二进制安装
16.1、lnmp介绍:
lnmp架构,linux的php的程序架构:
linux nginx MySQL PHP; # lamp:linux apache mysql php;
16.2、mysql介绍:
mysql是互联网领域极为重要的一款开源关系型数据库软件,由MySQL AB公司开发与维护,后被sun公司收
购,sun公司后又被oracle公司收购,现mysql属于oracle公司;
目前绝大多数使用linux操作系统的互联网企业都在使用mysql作为后端的数据库,从大型的bat门户,到电商
门户平台,分类门户平台无一例外;
16.3、mysql的优点:
软件体积小;
社区活跃,开放源代码;
软件体积小,安装使用简单,并且易于维护,安装维护的成本低;
支持多种操作系统,提供多种api接口,支持多种开发语言,特别对流行的php语言无缝支持;
16.4、安装mysql:
1、下载mysql:
2、为mysql创建虚拟用户:
[ ~]# mkdir /tools/ -p && cd /tools/
[ tools]# useradd -Ms /sbin/nologin mysql
3、解压文件并移动:
[ tools]# tar -xzf mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz
[ tools]# mv -v mysql-5.5.62-linux-glibc2.12-x86_64/ /application/mysql-5.5.62/
[ tools]# mkdir -p /application/ && cd /application/
[ application]# ln -s /application/mysql-5.5.62/ /application/mysql
4、授权mysql用户管理:
[ application]# chown -R mysql.mysql /application/mysql/
5、初始化mysql:
[ application]# cd /applicaiton/mysql/
[ mysql]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data/ --user=mysql
#basedir:安装的根;datadir:数据目录;
[ mysql]# ls data/
mysql performance_schema test
6、拷贝启动文件到/init.d/目录下:
[ mysql]# cp -a /application/mysql/support-files/mysql.server /etc/init.d/mysqld
[ mysql]# chmod +x /etc/init.d/mysqld
7、复制默认的配置文件:
[ mysql]# cp -a /application/mysql/support-files/my-small.cnf /etc/my.cnf
8、替换安装路径:
[ mysql]# sed -i ‘s#/usr/local/mysql#/application/mysql#g‘ /application/mysql/bin/mysqld_safe /etc/init.d/mysqld
/etc/my.cnf中的socket默认路径是/tmp/mysql.sock;
9、把mysql加入开机自启动:
[ mysql]# chkconfig --add mysqld
[ mysql]# chkconfig --list mysqld
mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
10、启动mysql:
[ mysql]# /etc/init.d/mysqld start
[ data]# lsof -i:3306
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 1661 mysql 10u IPv4 11135 0t0 TCP *:mysql (LISTEN)
11、注:加入开机自启动的第二种方法:
mysql手动启动(此时上面的将/application/mysql/support-files/mysql.server 拷贝到/etc/init.d/mysqld,改变mysqld路径的步骤可以去除):
[ mysql]# /application/mysql/bin/mysqld_safe & #&代表后台运行;
加入/etc/rc.local开机自启动文件;
echo ‘/application/mysql/bin/mysqld_safe‘ >>/etc/rc.local
12、配置mysql的全局环境变量:
[ /] echo ‘export PATH=/application/mysql/bin/:$PATH‘ >>/etc/profile
#可以 ln -s /application/mysql/bin/* /usr/local/bin/目录下 做root用户的变量;
[ ~]# source /etc/profile
[ /]# echo $PATH
/application/mysql/bin/:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
[ /]# mysql
mysql>
13、为mysql设置密码:
mysql默认安装的情况下是没有密码的;
[ data]# mysqladmin -u root password "123456"
[ data]# mysql
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘ (using password: NO)
[ data]# mysql -uroot -p123456
mysql>
14、修改密码:
[ data]# mysqladmin -uroot -p123456 password "lc"
[ data]# mysql -uroot -plc
mysql>
15、清空history历史记录:
[ data]# history -c
[ data]# >/root/.bash_history
16、mysql初始化数据库报错问题和解决办法:
ERROR 1045 (28000):Access denied for user (using password:no)# mysql数据库损坏,删除并重新初始化数据库;
WARNING:the host mysql could not be looked up with resloveip# 检查主机名对应主机ip解析是否正确 uname -n;
ERROR:1004 Can‘t create file /tmp/#sql300e_1_0.frm(errno:13) #mysql /tmp 数据目录权限有问题chmod 1777 /tmp/;
17、初始化方式自动方式:
mysql_secure_installation #一路回车,删除不需要的库,为root用户建立新的密码即可;