CENTOS6 RPM方式安装MYSQL5.5_MySQL, Oracle及数据库讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  MySQL, Oracle及数据库讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 1790 | 回复: 0   主题: CENTOS6 RPM方式安装MYSQL5.5        下一篇 
张伟
注册用户
等级:列兵
经验:110
发帖:81
精华:0
注册:2011-12-22
状态:离线
发送短消息息给张伟 加好友    发送短消息息给张伟 发消息
发表于: IP:您无权察看 2014-12-24 15:05:50 | [全部帖] [楼主帖] 楼主

    【下载】
登录MySQL官网下载页 http://dev.mysql.com/downloads/mysql/
选择 Linux-Generic 而不是Oracle & Ren Hat Linux 6
 下载对应的server 和 client 包,在此笔者选用64位

MySQL-client-5.5.31-2.linux2.6.x86_64.rpm
MySQL-server-5.5.31-2.linux2.6.x86_64.rpm


【依赖解决】
下载完毕后上传到Linux下,首先安装MySQL依赖组建,如下所示

yum -y install perl
yum -y install libaio


内网数据库服务器下载以下安装包:

www.perl.org
http://pkgs.org/centos-6-rhel-6/centos-rhel-x86_64/libaio-0.3.107-10.el6.x86_64.rpm/download/
rpm –ivh libaio-0.3.107-10.el6.x86_64.rpm
tar –zxvf ActivePerl-5.16.3.1603-x86_64-linux-glibc-2.3.5-296746.tar.gz


安装PERL需要配置路径和环境变量 /etc/profile
/usr/bin/建立一个perl的 连接到

Rm –rf /usr/bin/perl
Ln –s /opt/mntvdb/servers/ActivePerl-5.16/bin/perl /usr/bin/perl


 【安装】
执行安装命令

rpm -ivh  MySQL-server-5.6.13-1.linux_glibc2.5.x86_64.rpm --force --nodeps
rpm -ivh  MySQL-client-5.6.13-1.linux_glibc2.5.x86_64.rpm --force –nodeps


提示 /usr/bin/perl is needed rpm 加参数 --force –nodeps
启动MySQL

service mysql start


查看MySQL是否正常启动(默认端口:3306)

netstat –nat |grep 3306


可以在/etc/sysconfig/IPTABLES增加3306端口的支持。(安全上改为LOCALHOST的端口权限会更好)
【安装路径】
数据库目录   /var/lib/mysql/ 可以更改为其他目录
配置文件    /usr/share/mysql   (mysql.server命令及配置文件)
相关命令   /usr/bin   (客户端程序和脚本mysqladmin mysqldump等命令)

/usr/sbin:mysqld


启动脚本   /etc/rc.d/init.d/   (启动脚本文件mysql的目录
启动脚本 mysql

 根据错误地址 查看日志文件
这里的地址是 /var/lib/mysql/
日志名称一般为 服务器名.err
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz
缺省值 basedir= /usr
可以看/etc/rc.d/init.d/mysql 的启动脚本。。。
可以通过指令:
 whereis mysql
【文件权限】
错误:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock
应该是没有权限了,赋予mysql权限
 chown -R mysql:mysql /var/lib/mysql/
mysql:mysql 是 脚本建立的用户名和用户组

【初始化】
Service mysql stop
执行表的初始化
 /usr/bin/mysql_install_db
mysql_install_db --basedir=/home/mysql/mysql  --datadir=/home/mysql/mysql/data --user=mysql –force
mysql_install_db   --datadir=/opt/mntvdb/servers/mysqldata --user=mysql –force
rpm包安装的MySQL是不会安装/etc/my.cnf文件的,解决方法,只需要复制/usr/share/mysql目录下的my-huge.cnf 文件到/etc目录,并改名为my.cnf即可
cp /usr/share/mysql/my-default.cnf /etc/my.cnf

【设置mysql密码】
设置mysql密码
/usr/bin/mysqladmin -u root password '你的新密码'
mysql -u root
出现错误:error 1045(28000):access denied for user 'root'@'localthost'(using password:NO)
可能是user数据库未成功初始化数据
[root@loaclhost] /usr/bin/mysqld_safe --user=mysql --skip-grant-tables --skip-networking&
如果 --user=mysql写错成 --usr=mysql 就好提示以下错误:
[ERROR] /usr/sbin/mysqld: unknown variable 'usr=mysql'
停止服务
# /etc/init.d/mysql stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
换一个终端登录
# mysql -u root
mysql>Use mysql
mysql> UPDATE user SET password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit

Enter password: <输入新设的密码newpassword>
【更改密码】
首次安装时,默认密码为空,可以使用如下命令修改root密码,
/usr/bin/mysqladmin -u root  password 新密码XXXXX
然后再次登录
mysql -u root –p新密码XXXXX
修改登录密码
这是通过mysqladmin命令修改口令,也可通过修改库来更改口令。
UPDATE user SET password=PASSWORD('newpassword') where USER='root';
Query OK, 4 rows affected (0.00 sec)
Rows matched: 4  Changed: 4  Warnings: 0
FLUSH PRIVILEGES;
也就是用mysql>  SET PASSWORD = PASSWORD('123456');

【手动启动】
可以启动守护进程
 /usr/bin/mysqld_safe &
mysqld_safe  --user=XXX --basedir=XXX  --datadir=XXX  &

 mysqld_safe  --user=mysql  --datadir=/opt/data2013/servers/mysqldata/mysql &
 mysqld_safe  --user=mysql  --datadir=/opt/mntvdb/servers/mysqldata &

mysqld_safe 研究脚本的参数。。。

【启动与停止】
启动
MySQL安装完成后启动文件mysql在/etc/init.d目录下,在需要启动时运行下面命令即可。
/etc/init.d/mysql start
或者
/etc/rc.d/init.d/mysql start

停止
/usr/bin/mysqladmin -u root -p shutdown

自动启动
1)察看mysql是否在自动启动列表中

/sbin/chkconfig –list


2)把MySQL添加到你系统的启动服务组里面去

/sbin/chkconfig – add mysql


3)把MySQL从启动服务组里面删除。

/sbin/chkconfig – del mysql
Service mysql start/stop/status


【更改MySQL目录】
MySQL默认的数据文件存储目录为/var/lib/mysql。
假如要把目录移到/home/data下需要进行下面几步:

Step1


home目录下建立data目录

cd /opt/data2013/
mkdir mysqldata


赋予权限:

chown -R mysql:mysql /opt/data2013/servers/mysqldata/
chown -R mysql:mysql /opt/data2013/servers/mysqldata/mysql
step2


把MySQL服务进程停掉:

mysqladmin -u root -p shutdown
step3


把/var/lib/mysql整个目录移到/opt/data2013/servers/mysqldata

mv /var/lib/mysql /opt/data2013/servers/mysqldata


或者,重新初始化数据库

/usr/bin/mysql_install_db  --datadir=/opt/data2013/servers/mysqldata/mysql --user=mysql –force
Step4


修改my.cnf配置文件
如果/etc/目录下没有my.cnf配置文件,请到/usr/share/mysql/下找到*.cnf文件,
拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:

cp /usr/share/mysql/my-default.cnf /etc/my.cnf


编辑MySQL的配置文件/etc/my.cnf
为保证MySQL能够正常工作,需要指明mysql.sock文件的产生位置。
修改socket=/var/lib/mysql/mysql.sock一行中等号右边的值
为:/opt/data2013/mysqldata 。操作如下:

vi my.cnf ##用vi工具编辑my.cnf文件,找到下列数据修改之


注意[mysql]和[mysqld]区别,由于服务名叫mysqld 所以,对应my.cnf的节也要对应。

[client]
default-character-set=utf8
#[mysql]
socket  = /opt/data2013/servers/mysqldata/mysql/mysql.sock
#pid-file =/opt/data2013/servers/mysqldata/mysql/mysqld.pid
[mysqld]
port = 3306
datadir = /opt/data2013/servers/mysqldata/mysql
#socket = /var/lib/mysql/mysql.sock
user = mysql
log-bin = mysql-bin
pid-file =/opt/data2013/servers/mysqldata/mysql/mysqld.pid
socket  = /opt/data2013/servers/mysqldata/mysql/mysql.sock
log-error=/opt/data2013/servers/mysqldata/mysql/mysqld.log
[mysql_safe]
log-error=/opt/data2013/servers/mysqldata/mysql/mysqld.log
pid-file =/opt/data2013/servers/mysqldata/mysql/mysqld.pid
socket  = /opt/data2013/servers/mysqldata/mysql/mysql.sock
datadir = /opt/data2013/servers/mysqldata/mysql
user = mysql
Step5


修改MySQL启动脚本/etc/rc.d/init.d/mysql
最后,需要修改MySQL启动脚本/etc/rc.d/init.d/mysql,把其中datadir=/var/lib/mysql一行中,等号右边的路径改成你现在的实际存
放路径:home/data/mysql。

vi /etc/rc.d/init.d/mysql
#datadir=/var/lib/mysql##注释此行


5.15服务器:datadir=/opt/data2013/servers/mysqldata/mysql ##加上此行

5.10服务器:datadir=/opt/mntvdb/servers/mysqldata ##加上此行

Step6


重新启动MySQL服务

/etc/rc.d/init.d/mysql start


或用reboot命令重启Linux
如果工作正常移动就成功了,否则对照前面的7步再检查一下。

【配置远程访问】
处于安全考虑,Mysql默认是不允许远程访问的,可以使用下面开启远程访问

//赋予任何主机访问数据的权限
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION
//使修改生效
mysql>FLUSH PRIVILEGES


如果依然不能远程访问的话,那就很可能防火墙的原因了,可以在防火墙中开启3306端口。

登录mysql
mysql -p 回车输入密码

如果提示无法启动,PID不对,可以尝试服务器启动脚本mysql或者叫mysqld。。。
下载 /etc/rc.d/init.d/mysql
修改datadir=/opt/data2013/servers/mysqldata/mysql

备份 mv /etc/rc.d/init.d/mysql /etc/rc.d/init.d/mysql.bak
上次修改后的 mysql

Chmod +x /etc/rc.d/init.d/mysql


然后 service start

--转自 北京联动北方科技有限公司




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论