lnmp之mysql安装

linux 进行mysql安装

# yum -y install make gcc-c++ cmake bison-devel  ncurses-devel    //
安装编译代码需要的包

# wget  //
下载mysql包

# tar -zxvf mysql-5.6.27.tar.gz // 解压mysql包
# cd mysql-5.6.27 

/ 采用Cmake编译:
#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_ARCHIVE_STORAGE_ENGINE=1
-DWITH_PARTITION_STORAGE_ENGINE=1
-DWITH_BLACKHOLE_STORAGE_ENGINE=1
-DWITH_READLINE=1
-DENABLE_DOWNLOADS=1
-DENABLED_LOCAL_INFILE=1
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock
-DMYSQL_TCP_PORT=3306
-DEXTRA_CHARSETS=all
-DDEFAULT_CHARSET=utf8mb4
-DDEFAULT_COLLATION=utf8mb4_unicode_ci
make && make install

安装过程可能时间有点长。

2.配置MySQL
查看是否有mysql用户及用户组

cat /etc/passwd 查看用户列表
cat /etc/group 查看用户组列表如果没有就创建
groupadd mysql
useradd -g mysql mysql

修改/usr/local/mysql权限
chown -R mysql:mysql /usr/local/mysql

进入安装路径
cd /usr/local/mysql

进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表
scripts/mysql_install_db –basedir=/usr/local/mysql
–datadir=/usr/local/mysql/data –user=mysql

执行mysql_install_db命令的时候后面的参数一定要加上,–user代表运行用户,–basedir代表MySql安装目录,–datadir代表数据库数据所在目录

 

注:在启动MySQL服务时,会按照一定次序搜索my.cnf,先在/etc目录下找,找不到则会搜索”$basedir/my.cnf”,在本例中就是
/usr/local/mysql/my.cnf,这是新版MySQL的配置文件的默认位置!注意:在CentOS
6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动。

 

启动MySQL
添加服务,拷贝服务脚本到init.d目录,并设置开机启动
cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql ON
service mysql start –启动MySQL配置用户

**启动时会 报错:
1) Starting MySQL..The server quit without updating PID file
([FAILED]/mysql/iZ2zegxohhsdr2ypoihxvsZ.pid)?
解决:
1) mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,
请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir).
datadir = /usr/local/mysql/data ,并且去除#

 

设置之前,我们需要先设置PATH,要不不能直接调用mysql
修改/etc/profile文件,在文件末尾添加
PATH=/usr/local/mysql/bin:$PATH
export PATH

让配置立即生效
# source /etc/profile

 

mysql-uroot // 进入mysql
mysql> SET PASSWORD = PASSWORD(‘root’); // 设置密码
mysql> GRANT ALL PRIVILEGES ON *.* TO ‘root’@’192.168.%’ IDENTIFIED
BY ‘rootroot’ WITH GRANT OPTION; // 设置远程访问

 

============== 密码错误 进不去数据库解决 ===========================
# /etc/init.d/mysql stop
# mysqld_safe –user=mysql –skip-grant-tables –skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD(‘newpassword’) where
USER=’root’;
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysql restart
# mysql -uroot -p
Enter password: <输入新设的密码newpassword>

 

=============== Mysql授权远程访问 ============================
1.GRANT ALL PRIVILEGES ON *.* TO ‘root’@’47.100.16.97’ IDENTIFIED BY
‘Root@8899’ WITH GRANT OPTION;

2.GRANT ALL PRIVILEGES ON *.* TO root@’%’IDENTIFIED BY ‘Root666@root’
WITH GRANT OPTION;

3.FLUSH PRIVILEGES;

 

致此本次安装完成,仅供参考,多多建议,共同进步 。

 

Leave a Comment.