环境:centos7 mysql5.5.62
首先一定要卸载干净
1.卸载原有程序
yum remove mysql mysql-server mysql-libs
2.查看是否还有mysql
rpm -qa | grep -i mysql
3.查看残留的目录:
whereis mysql #应该会输出 /usr/lib64/mysql
4.删除mysql目录:
rm -rf /usr/lib64/mysql
5.删除相关文件:
rm -rf /etc/my.cnf
rm -rf /root/.mysql_sercret
6.最关键的(如果这个目录如果不删除,再重新安装之后,密码还是之前的密码,不会重新初始化):
rm -rf /var/lib/mysql
7.查看~目录或其他相关目录下是否有隐藏的.my.cnf文件,一并删除(我就是在这个坑里折腾了一整天)
8.卸载自带的mariadb
检查是否存再mariadb
rpm -qa | grep mariadb
用yum remove卸载相关包
以上卸载就完成了。
安装参考https://blog.csdn.net/StenisGate/article/details/90740163已经写的很详细了
1.下载mysql相对应的版本
官网下载地址:https://dev.mysql.com/downloads/mysql/
- 解压安装包
tar -zxvf mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
重命名为mysql
cd /usr/local
mv mysql-5.5.62-linux-glibc2.12-x86_64.tar.gz mysql
3.安装依赖
yum install -y libaio
yum -y install autoconf
4.添加用户授权并安装
添加用户,将使用该用户执行MySQL进程
useradd -s /bin/false -M mysql
修改MySQL目录权限
chown -R mysql:mysql /usr/local/mysql
安装并指定用户和data文件夹位置
/usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data/ --user=mysql
更改所属用户和组,除了mysql目录下的data目录所属用户不变,其他所有文件的所属用户改回root
chown -R root /usr/local/mysql/
chown -R mysql /usr/local/mysql/data/
5.拷贝配置文件,将mysql的配置文件拷贝为/etc/目录下的my.cnf,若提示已存在直接覆盖
cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf
拷贝启动程序,将mysql的启动程序拷贝到/etc/init.d/目录下
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
6.安装完成启动服务
service mysqld start
看到success表示启动成功
7.配置环境变量
加入环境变量,编辑/etc/profile,这样可以在任何地方用mysql命令了
echo "export MTSQL_HOME=/usr/local/mysql" >> /etc/profile
echo "export PATH=$MYSQL_HOME/bin:$PATH" >> /etc/profile #根据实际情况修改
source /etc/profile #重新载入
首次修改密码
mysqladmin -u'root' password 'root'
之后修改密码
mysqladmin -u'root' -p'PassWord' password 'NewPassWord' SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
设置数据库表名不区分大小写(这个常用配置不要忘记),编辑 my.conf
vim /etc/my.cnf
在[mysqld]后面加入一行
lower_case_table_names = 1
重启mysql生效
常用命令
启动
service mysqld start
关闭
service mysqld stop
重新启动
service mysqld restart
查看运行状态
service mysqld status
允许远程用户登录访问(登入mysql后操作)
grant all on *.* to 'root'@'%' identified by '123' with grant option;
刷新权限(登入mysql后操作)
flush privileges;
MySQL添加开机自启动
1、将服务文件拷贝到init.d下,并重命名为mysqld
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
chmod +x /etc/init.d/mysqld
3、添加服务
chkconfig --add mysqld
4、显示服务列表
chkconfig --list
如果看到mysql的服务,并且3,4,5都是on的话则成功,如果是off,则键入
chkconfig –level 345 mysqld on
创建用户和表并授权
1、创建用户
CREATE USER 'username'@'host' IDENTIFIED BY 'password';
CREATE USER 'zhangkuan'@'localhost' IDENTIFIED BY '123456';
2、创建库
CREATE DATABASE databasename;
CREATE DATABASE zhangkuan;
3、授权
GRANT PRIVILEGES ON databasename.tablename TO 'username'@'host';
GRANT SELECT, INSERT ON guitu.user TO 'guitu'@'%';
GRANT ALL ON guitu.* TO 'guitu'@'%';
4、授权用户拥有授权权限
GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;
GRANT ALL ON zhangkuan.* TO 'guitu'@'%' WITH GRANT OPTION;
5、撤销用户权限
REVOKE privilege ON databasename.tablename FROM 'username'@'host';
网友评论