本文共 2672 字,大约阅读时间需要 8 分钟。
因为服务器上已经安装了一个mysql,但是和我所需要的版本不同,所以需要另外安装一个mysql,这样的话就不能用rpm包来安装了,只能通过tar.gz文件来安装,但是由于版本太新,必须通过cmake来编译,所以要安装cmake,在解决了gcc编译问题后安装cmake
1、下载cmake的安装包,官网提供两种安装包:source和binary。我选择了Linux环境下的source文件,即cmake-2.8.4.tar.gz文件。
下载地址:2、解压这个压缩包3、依次执行如下命令:[root@localhost cmake-2.8.4]#./bootstrap2、安装mysql(mysql-5.6.11.tar.gz)
创建mysql组和用户
#groupadd mysql
#useradd -g mysql mysql
创建存放目录
#mkdir /usr/local/mysql
#mkdir /data/mysql
解压mysql的tar包#tar zxvf mysql-5.6.11.tar.gz
#cd mysql-5.6.11
cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_MYISAM_STORAGE_ENGINE=1 \ -DWITH_INNOBASE_STORAGE_ENGINE=1 \ -DWITH_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_MEMORY_STORAGE_ENGINE=1 \ -DWITH_READLINE=1 \ -DENABLED_LOCAL_INFILE=1 \ -DMYSQL_DATADIR=/data/mysql \ -DMYSQL_USER=mysql \ -DMYSQL_TCP_PORT=3308执行完后报错,缺少ncurses-devel,安装ncurses-devel-5.7-3.20090208.el6.x86_64.rpm再执行解决
#make;make install
这里需要给mysql需要执行的命令增加一个环境变量
#vi /etc/profile
加入一下两句
PATH=$PATH:/usr/local/mysql/bin:/usr/local/mysql/lib/
export PATH
保存推出,让其立即生效
#source /etc/profile
赋予mysql权限
#chown -R mysql:mysql /usr/local/mysql
#chown -R mysql:mysql /data/mysql
执行初始化配置脚本,创建系统自带的数据库和表。 #mysql_install_db --user=mysql --datadir=/data/mysql
初始化脚本在 /usr/local/mysql/my.cnf 生成了配置文件。
复制服务启动脚本 #cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld2
接着就可以启动mysql
#server mysqld2 restart
报错:[root@ServerA mysql-5.6.11]# service mysqld2 start
StartingMySQL.....................................................................................................Theserver quit without updating PID file (/var/lib/mysql/ServerA.pid).[失败]
解决:还有由于上一个mysql冲突造成的,直接卸载完全ok
设置开机启动
#chkconfig mysqld on
给mysql设置密码
#mysql 直接就进入mysql(初始的mysql没有密码哦)
>use mysql;
>update user set password = password(111111) where user ='root'; 给root设置密111111
>flush privileges; 刷新表使其生效>\q 退出,重新进入mysql就需要密码
#mysql -uroot -p 111111 就可以进去了
>到此安装mysql5.6.11就结束了。
ERROR 1130: Host ***.***.***.*** is not allowed toconnect to this MySQL server
登陆mysql
首先 use mysql;
按照别人提供的方式update的时候,出现错误。
mysql> update user set host='%' where user = 'root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
然后查看了下数据库的host信息如下:
mysql> select host from user where user='root';
+-----------+
| host|
+-----------+
| %|
| 127.0.0.1 |
| ServerA|
+-----------+
3 rows in set (0.00 sec)
host已经有了%这个值,所以直接运行命令:
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
本文转自gaofeng36599 51CTO博客,原文链接:http://blog.51cto.com/786678398/1206953
转载地址:http://zpycx.baihongyu.com/