上个星期研究了一个星期的Mysql,从今天起把学到的东西整理一下。
----------------------------------------------
mysql安装本人亲试过两种安装方式,一种rpm方式,一种绿色方式安装,个人感觉rpm方式最方便
1.rpm方式
1)需要的软件包:(5.5为例,https://dev.mysql.com/downloads/mysql/5.5.html#downloads)
MySQL-client-5.5.48-1.linux2.6.i386.rpm
MySQL-server-5.5.48-1.linux2.6.i386.rpm
2)检查该机器上是否安装过mysql
rpm -qa|grep -i mysql
如果没有任何输入证明没有安装过,如果安装过需要卸载的话用rpm -e 软件包名 来卸载
3)安装服务端,红色框表示:mysql默认创建了一个root用户,但是没有密码,需要你后期指定
4)安装客户端
5)检查是否安装成功。mysql安装的过程中会自动给你创建mysql用户和用户组,查看是否创建,这也是从侧面检查是否安装成功;或者执行 mysqladmin --version命令检查是否成功
6)mysql启动和停止。mysql安装过程中会把mysql命令注册成服务,所以可以通过service方式启动和停止
7)连接
首次连接,不需要密码。mysql命令默认root用户,默认本机ip,默认3306端口,而root用户默认又没有密码,so就之间连上啦
给root设置密码
8)设置开机启动mysql
more /etc/inittab查看系统默认启动级别,我的是3
所以使用chkconfig --level 3 mysql on设置开机启动
9)修改配置文件位置到etc下面
10)修改字符集
先查看字符集:show variables like 'character%'; 看到默认使用的字符集是latin1
修改my.cnf文件
[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysqld]
character_set_server=utf8
character_set_client=utf8
collation-server=utf8_general_ci
init_connect='SET NAMES utf8'
保存,重启mysql.
11)其他可选配置
可以在my.cnf中设置数据文件的存放目录:
datadir = /var/lib/mysql/
2.绿色安装方式
1)需要的软件包,以Percona5.5为例
Percona-Server-5.5.30-rel30.2-500.Linux.x86_64.tar.gz
Percona-Server-client-55-5.5.35-rel33.0.611.rhel6.x86_64.rpm
Percona-Server-shared-55-5.5.35-rel33.0.611.rhel6.x86_64.rpm
2)解压,建议解压到/usr/local/mysql/目录
Percona-Server-5.5.30-rel30.2-500.Linux.x86_64.tar.gz到/usr/local/mysql/目录
3.查看依赖
ldd /usr/local/mysql/bin/mysqld 我的报以下信息
linux-vdso.so.1 => (0x00007fff783ff000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007facd19bb000)
libaio.so.1 => /lib64/libaio.so.1 (0x0000003548a00000)
libm.so.6 => /lib64/libm.so.6 (0x00007facd1736000)
librt.so.1 => /lib64/librt.so.1 (0x00007facd152e000)
libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00007facd12f7000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007facd10f2000)
libssl.so.6 => not found
libcrypto.so.6 => not found
libc.so.6 => /lib64/libc.so.6 (0x00007facd0d5d000)
/lib64/ld-linux-x86-64.so.2 (0x00007facd1be5000)
libfreebl3.so => /lib64/libfreebl3.so (0x00007facd0b5a000)
4.安装缺少的依赖,然后做软连接
yum -y install libssl.so.6 安装
find / -name "libssl.so*"
找到合适的文件。然后做软连接
ln -s /usr/lib64/libssl.so.1.0.1e /lib64/libssl.so.6
find / -name "libcrypto.so*"
找到合适的文件。然后做软连接
ln -s /usr/lib64/libcrypto.so.1.0.1e /lib64/libcrypto.so.6
5.在Centos中创建mysql用户组和用户,这个用户其实可以不用登陆这个功能,所以设置-s /sbin/nologin参数,-M表示不创建用户目录
groupadd mysql
useradd mysql -g mysql -M -s /sbin/nologin
6.执行安装
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/var/lib/mysql --user=mysql
7.添加到系统服务
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
8.开机启动
chkconfig --add mysqld
9.替换OR修改/etc/my.conf
10.启动服务
service mysqld start
PS:如果my.conf中没有配置basedir会报:
[root@wangxin ~]# service mysqld start
/etc/init.d/mysqld: line 256: my_print_defaults: command not found
/etc/init.d/mysqld: line 276: cd: /usr/local/Percona-Server-5.5.30-rel30.2-500.Linux.x86_64: No such file or directory
Starting MySQL (Percona Server)Couldn't find MySQL server ([失败]ocal/Percona-Server-5.5.30-rel30.2-500.Linux.x86_64/bin/mysqld_safe)
11.登陆
首次登陆不需要密码。登陆成功后修改root密码,并开启root远程登录
use mysql
update user set password=PASSWORD('123456') where user='root';
Grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;
重新登陆
PS:如果登录的时候提示没有mysql command需要安装mysql client 安装
rpm -ivh Percona-Server-shared-55-5.5.35-rel33.0.611.rhel6.x86_64.rpm
rpm -ivh Percona-Server-client-55-5.5.35-rel33.0.611.rhel6.x86_64.rpm
PS:如果安装的时候报这个错error: Failed dependencies:
/usr/bin/perl is needed by MySQL-server-5.5.28-1.linux2.6.i386
安装yum -y install perl
12)防火墙添加mysql端口
vim /etc/sysconfig/iptables
service iptables restart