linux中mysql的卸载与安装
MYSQL的安装
平时安装MySQL都是源码包安装的,由于它的编译需要很长的时间,所以,建议你安装二进制免编译包。你可以到MySQL官方网站去下载 http://dev.mysql.com/downloads/ 具体版本根据你的平台和需求而定,目前比较常用的为mysql-5.0/mysql-5.1, 5.5版本虽然已经发布有段日子了,但是貌似用在线上跑服务的还是少数。所以建议你下载一个5.1的版本。可以使用下面是安装步骤(注意,下面的安装步骤是基于32位操作系统的,如果你的系统为64位,则需要下载一个64位的包):
1、下载mysql到/usr/local/src/
cd /usr/local/src/ weget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.15-linux-glibc2.12-x86_64.tar
2、解压
tar -xvf mysql-8.0.15-linux-glibc2.12-x86_64.tar
tar xvJf mysql-8.0.15-linux-glibc2.12-x86_64.tar.xz
tar xvJf mysql-router-8.0.15-linux-glibc2.12-x86_64.tar.xz
tar xvJf mysql-test-8.0.15-linux-glibc2.12-x86_64.tar.xz
3、把解压完的数据移动到/usr/local/mysql
mv mysql-8.0.15-linux-glibc2.12-x86_64 /usr/local/mysql
4、建立mysql用户
useradd -s /sbin/nologin mysql
5、初始化数据库
cd /usr/local/mysql mkdir -p /data/mysql ; chown -R mysql:mysql /data/mysql ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
--user
定义数据库的所属主, --datadir
定义数据库安装到哪里,建议放到大空间的分区上,这个目录需要自行创建。这一步骤很关键,如果你看到两个 “OK” 说明执行正确
6、拷贝配置文件
cp support-files/my-large.cnf /etc/my.cnf
没有 可以自己添加
添加默认配置文件
vim/etc/my.cnf [client] port=3306 socket=/tmp/mysql/mysql.sock [mysqld] port=3306 user=mysql socket=/tmp/mysql/mysql.sock basedir=/usr/local/mysql datadir=/usr/local/mysql/data log-error=error.log
初始化mysql
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
在初始化过程中可能会遇到错误,日志如下可以修改/tmp/mysql的目录权限
chown -R mysql:mysql /tmp/mysql
7、拷贝启动脚本文件并修改其属性
cp support-files/mysql.server /etc/init.d/mysqld chmod 755 /etc/init.d/mysqld
8、修改启动脚本
vim /etc/init.d/mysqld
需要修改的地方有 “datadir=/data/mysql” --datadir=/usr/local/mysql/data/(前面初始化数据库时定义的目录)
9、把启动脚本加入系统服务项,并设定开机启动,启动mysql
chkconfig --add mysqld chkconfig mysqld on service mysqld start or./support-files/mysql.server start
service mysqld start 启动出现 Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/weidiajie.pid)
查看错误日志:
[Warning] [MY-010068] [Server] CA certificate ca.pem is self signed. 2019-03-23T15:25:51.728890Z 0 [ERROR] [MY-010273] [Server] Could not create unix socket lock file /tmp/mysql/mysql.sock.lock. 2019-03-23T15:25:51.728900Z 0 [ERROR] [MY-010268] [Server] Unable to setup unix socket lock file. 2019-03-23T15:25:51.729174Z 0 [ERROR] [MY-010119] [Server] Aborting
在日志文件 cd /usr/local/mysql/data/error.log
中可以看到具体的ERROR
信息:Could not create unix socket lock file /var/run/mysql/mysql.sock.lock。
这种错误一般都是目录不存在或者权限不足,所以我们直接使用命令 mkdir -p /var/run/mysql/
创建该目录即可,然后可以设置目录权限 chown -R mysql:mysql /var/run/mysql/
。
如果启动不了,请到 /data/mysql/ /usr/local/mysql/data/ 下查看错误日志,这个日志通常是主机名.err. 检查mysql是否启动的命令为:
[root@localhost mysql]# ps aux |grep mysqld
修改mysql的默认初始化密码
alter user 'root'@'%' identified with mysql_native_password by 'root';
创建用户
create user 'jack'@'localhost' identified by 'jack';
授予权限
grant replication slave on *.* to 'jack'@'localhost';
刷新
flush privileges;
修改root用户可以远程连接
update mysql.user set host='%' where user='root'
删除mysql
yum remove mysql mysql-server mysql-libs compat-mysql51 rm -rf /var/lib/mysql
检查是否还有其它mysql,如有yum remove + 【名字】删除
rpm -qa|grep mysql
检查删除其它相关文件
find / -name mysql
rm -rf /usr/lib/mysql
I can feel you forgetting me。。 有一种默契叫做我不理你,你就不理我