MySQL For RedHat Linux(源码安装,附安装包)
- 准备工作
在XX去所有下载安装包 mysql.zip
把相应的包放在 /opt 目录下 解压mysql.zip - 检测系统是否安装MySQL
1、执行 #rpm -qa | grep -i mysql
如果出现:
[root@localhost Mysql]# rpm -qa|grep -i mysql[root@localhost Mysql]#
则未安装MySQL,直接执行第三步,否则安装了MySQL,执行第2步,卸载MySQL2、卸载MySQL,详细请看地址:http://www.iitshare.com/centeros-6-3-64-bit-uninstall-mysql5-5-25.html
如果系统自带MySQL
判断系统自带MySQL,执行#rpm -qa | grep -i mysql
如果出现(类似):[root@localhost Mysql]# rpm -qa|grep -i mysql
mysql-libs-5.1.66-2.el6_3.x86_64
则执行:[root@localhost Mysql]# rpm –ev --nodeps mysql-libs-5.1.66-2.el6_3.x86_64 卸载MySQL
- 安装MySQL
- 转到安装包目录
[root@localhost Mysql]# cd /opt/Mysql/
[root@localhost Mysql]# ls
[root@localhost Mysql]#rpm
- 检查本机Linux是否已安装好make,bison,cmake,gcc-c++,ncurses,如果尚未安装,先安装以上包,安装方法如下:
[root@localhost Mysql]# rpm –ivh libgcc-4.4.7-3.el6.x86_64.rpm
[root@localhost Mysql]# rpm –ivh libstdc++-devel-4.4.7-3.el6.x86_64.rpm
[root@localhost Mysql]# rpm –ivh gcc-4.4.7-3.el6.x86_64.rpm
[root@localhost Mysql]# rpm –ivh gcc-c++-4.4.7-3.el6.x86_64.rpm
[root@localhost Mysql]# rpm –ivh bison-2.4.1-5.el6.x86_64.rpm
[root@localhost Mysql]# rpm –ivh ncurses-devel-5.7-3.20090208.el6.x86_64.rpm
?
注意:一般系统都会默认安装有make
- 安装cmake
[root@localhost Mysql]#tar –zxv –f cmake-2.8.9.tar.gz
[root@localhost Mysql]#cd cmake-2.8.9
[root@localhost Mysql]#./configure
[root@localhost Mysql]#make
[root@localhost Mysql]#make install
- 创建mysql的安装目录及数据库存放目录
[root@localhost Mysql]#mkdir -p /usr/local/mysql[root@localhost Mysql]#mkdir -p /usr/local/mysql/data
- 创建mysql用户及用户组
[root@localhost Mysql]# groupadd mysql[root@localhost Mysql]# useradd -r -g mysql mysql
- 安装MySQL
[root@localhost Mysql]#tar –zxv –f mysql-5.6.16.tar.gz
[root@localhost Mysql]#cd mysql-5.6.16
[root@localhost Mysql]# cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql/ -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_INNOBASE_STORAGE_ENGINE=1 -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/usr/local/mysql/data/mysql.sock -DMYSQL_USER=mysql -DWITH_DEBUG=0 -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
注意:此命令为一行
[root@localhost Mysql]#make
[root@localhost Mysql]#make install
?
参数说明:
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql //安装目录
-DINSTALL_DATADIR=/usr/local/mysql/data //数据库存放目录
-DDEFAULT_CHARSET=utf8 //使用utf8字符
-DDEFAULT_COLLATION=utf8_general_ci //校验字符
-DEXTRA_CHARSETS=all //安装所有扩展字符集
-DENABLED_LOCAL_INFILE=1 //允许从本地导入数据
?
注意事项:
重新编译时,需要清除旧的对象文件和缓存信息。编译过程中能够直观的看出编译成功没有
# make clean
# rm -f CMakeCache.txt
# rm -rf /etc/my.cnf
?
配置
[root@localhost Mysql]# cd /usr/local/mysql
[root@localhost mysql]# chown -R root:mysql .
[root@localhost mysql]# chown -R mysql:mysql data
[root@localhost mysql]#cp /opt/Mysql/my.cnf /etc/my.cnf
[root@localhost mysql]# cd /usr/local/mysql
[root@localhost mysql]# scripts/mysql_install_db --user=mysql
设置环境变量
[root@localhost mysql]# vi /root/.bash_profile
在PATH=$PATH:$HOME/bin添加参数为:
PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib
保存修改
[root@localhost mysql]# source /root/.bash_profile
?
手动启动mysql
[root@ localhost ~]# cd /usr/local/mysql
[root@ localhost mysql]# ./bin/mysqld_safe --user=mysql & //启动MySQL,但不能停止
启动日志写在此文件下:/usr/local/mysql/data/localhost.err
关闭MySQL服务
[root@ localhost mysql]# mysqladmin -u root -p shutdown //这里MySQL的root用户还没有配置密码,所以为空值。需要输入密码时,直接点回车键即可。
另一种简单的启动mysql的方法(mysql已经被添加到系统服务中)
[root@ localhost ~]# service mysql.server start
[root@ localhost ~]# service mysql.server stop
[root@ localhost ~]# service mysql.server restart
如果上述命令出现:mysql.server 未识别的服务
?
则可能mysql还没添加到系统服务中,下面用另一种方法添加:
[root@ localhost mysql]# cp support-files/mysql.server /etc/init.d/mysql //将mysql的启动服务添加到系统服务中
注意:主要是将mysql.server拷贝到/etc/init.d中,命名为mysql。在有的系统中,mysql.server在/usr/local/mysql/share/mysql/mysql.server中,而本系统中,mysql.server在cd/usr/local/mysql/support-files/mysql.server中。
?
然后再用#service mysql start 来启动mysql即可。
- 检测mysql 3306端口是否打开:[root@localhost Mysql]# netstat –nat
如果出现如下时,表示mysql 3306端口打开
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
如果没有启动3306端口,则表示mysql服务没启动
启动mysql服务:service mysqld start 或者 service mysql start
在检测mysql 3306端口是否打开:[root@localhost Mysql]# netstat –nat
- 修改mysql密码
可选步骤:设置root 密码:/usr/local/mysql/bin/mysqladmin -u root password ‘new-password‘
/usr/local/mysql/bin/mysqladmin -u root -h localhost.localdomain password ‘new-password‘
此步骤需要在数据库启动之后才能执行成功)
?
以下下为另一种修改MySQL的root用户的密码以及打开远程连接
[root@ rhel5~]# mysql -u root mysql
mysql>use mysql;
mysql>desc user;
mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root"; //为root添加远程连接的能力。
mysql>update user set Password = password(‘xxxxxx‘) where User=‘root‘;
mysql>select Host,User,Password from user where User=‘root‘;
mysql>flush privileges;
mysql>exit
?
重新登录:mysql -u root -p
?
若还不能进行远程连接,则关闭防火墙
[root@ rhel5~]# /etc/rc.d/init.d/iptables stop
复制代码
注:如果不能远程连接,出现错误mysql error number 1130,则加入下面语句试试:
?
mysql>GRANT ALL PRIVILEGES ON *.* TO ‘root‘@‘%‘ IDENTIFIED BY ‘******‘ WITH GRANT OPTION;
?
?
- ps aux |grep mysq* 查看关于mysql的进程
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。