Linux安装Mysql5版本
将下载文件上传至/usr/local/software 下
2. 解压安装包
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.卸载mysql以及自带的mariadb
检查是否存再mariadb
rpm -qa | grep mariadb
下载相关包
yum remove mariadb-libs-5.5.60-1.el7_5.x86_64
查找mysql相关文件删除
whereis mysql
4.安装依赖
yum install -y libaio yum -y install autoconf
5.添加用户授权并安装
添加用户,将使用该用户执行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/
6. 修改my.cnf配置文件
# vi /etc/my.cnf
将以下内容添加到my.cnf
[client] # 设置mysql客户端默认字符集 default-character-set=utf8
#一定要配置该方式,否则通过命令连接库时会提示无法通过sock连接,只能通过Tcp的方式连接 socket=/app/mysql5/sock/mysql.sock [mysqld] skip-name-resolve #设置3306端口 port = 3306 socket=/app/mysql5/sock/mysql.sock # 设置mysql的安装目录, 这里的目录一定要是你解压后并且改了名的目录哟.. basedir=/app/mysql5 # 设置mysql数据库的数据的存放目录, 这里的目录一定要是你解压后并且改了名的目录哟.. datadir=/app/mysql5/data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB lower_case_table_name=1 max_allowed_packet=16M log-error=/app/mysql5/log/error.log
7. 切换目录到mysql中
# cd /usr/local/mysql-5.5.60
8. 添加用户组与用户, 这里需要将目录切换到mysql目录下哟..
# groupadd mysql # useradd -g mysql mysql # chown -R mysql:mysql ./
9. 配置Mysql
# chown -R mysql:mysql data # chown 777 /etc.my.cnf # cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld # chmod +x /etc/rc.d/init.d/mysqld # chkconfig --add mysqld # chkconfig --list mysqld
10. 开启服务
service mysqld start
看到success表示启动成功
11.配置PATH
加入环境变量,编辑/etc/profile,这样可以在任何地方用mysql命令了
# vi ~/.bash_profile
在文件最后面加入以下内容,并使用:wq保存
export PATH=$PATH:/usr/local/mysql-5.5.60/bin
刷新PATH
source /etc/profile
首次修改密码
登录mysql, 这时mysql没有密码, 当出现Enter password:时直接回车
【如果默认的密码有设置但忘记了,需要使用安全模式启动: https://www.cnblogs.com/acker-ploy/p/11843362.html】
./usr/local/mysql-5.5.60/bin/mysql -uroot -p
mysql> use mysql mysql> update user set password=password('需要设置的密码') where user='root' and host='localhost'; mysql> flush privileges;
之后修改密码
mysqladmin -u'root' -p'PassWord' password 'NewPassWord' SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
设置数据库表名不区分大小写(这个常用配置不要忘记),编辑 my.conf
vim /etc/my.cnf lower_case_table_names = 1
设置远程登录
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '刚才设置的root密码' WITH GRANT OPTION;
重启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;
flush privileges;
创建用户和表并授权
# 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';
---------------------------------------------------The Ending-------------------------------------------