在linux安装mysql,并设置远程访问
1.查看系统有没有安装mysql.
vpm -qa mysql
发现有删除:rpm -e mysql(rpm -e --nodeps mysql)
2.下载数据库 mysql-standard-5.0.27-linux-i686.tar.gz
进行解压 tar -zxvf mysql-standard-5.0.27-linux-i686.tar.gz
groupadd mysql
useradd -g mysql mysql
3.进入mysql目录,初始化数据库 scripts/mysql_install_db --user=mysql
4更改目录组,用户
chown -R root.
chgrp -R mysql.
chowm -R mysql data
4.启动mysql
bin/mysqldsafe --user=mysql&
设置每个用户直接登录mysql;
cd /root/
vi .bash_profile
path=/home/mysql/bin/
进行访问数据库
./mysqladmin -uroot password(设置密码)
mysql -u root -p123
()
现在新版的mysql一般默认都不允许远程连接的。需要建立远程连接账号才可以。
以命令行方式使用root账号进入mysql。
5.进入mysql:use `mysql`;
web与mysql数据库分离开来是一个不错的选择,避免因为大量的数据库查询占用CPU而使web资源不足,同时可以使web服务器的资源尽最大的提供浏览服务,而数据库服务器单独的只处理数据库事物。
适用范围:拥有独立主机权限。
硬件配置:两台服务器,至于具体服务器硬件配置就不在本文范围内了。其中:A为web服务器(假设ip为:192.192.192.192)、B为mysql数据服务器(假设ip为:168.168.168.168)
着手动作:
1.在web服务器A配置好web服务。假设web服务器的IP为:192.192.192.192
2.在数据库服务器B安装好mysql服务。
3.现在新版的mysql一般默认都不允许远程连接的。需要建立远程连接账号才可以。
以命令行方式使用root账号进入mysql。
mysql -uroot -ppass
选择进入mysql数据库
use `mysql`;
查看所有存在的账号和地址。
SELECT `Host`,`User` FROM `user`;
也就是说,存在三个只允许本地连接的(localhost)账号,分别为 root、pma、空用户。
现在决定让root具有上面那个web服务器A的远程链接的权限,那么就这样。
UPDATE `user` SET `Host`='192.192.192.192' WHERE `User`='root' LIMIT 1;
这样192.192.192.192这台web服务器就可以远程连接到这个数据库服务器了。假如你想让任何远程机器都可以连接这个数据库,就将192.192.192.192换为%。不过不建议这样做!
假如你想新建一个用户new_user具备远程链接的权限的话,就这样
INSERT INTO `user` ( `Host` , `User` , `Password` , `Select_priv` , `Insert_priv` , `Update_priv` , `Delete_priv` , `Create_priv` , `Drop_priv` , `Reload_priv` , `Shutdown_priv` , `Process_priv` , `File_priv` , `Grant_priv` , `References_priv` , `Index_priv` , `Alter_priv` , `Show_db_priv` , `Super_priv` , `Create_tmp_table_priv` , `Lock_tables_priv` , `Execute_priv` , `Repl_slave_priv` , `Repl_client_priv` , `ssl_type` , `ssl_cipher` , `x509_issuer` , `x509_subject` , `max_questions` , `max_updates` , `max_connections` ) VALUES ('192.192.192.192', 'new_user', PASSWORD( 'new_user_password' ) , 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', 'Y', '', '', '', '', '0', '0', '0');
将new_user改为你想要的名字就可以了,密码是:new_user_password,当然你可以随意设置。
最后要刷新MySQL的系统权限相关表
mysql> flush privileges;
出现还是不行的话
在window中看看能不能ping linux设置的ip
mysql> grant all on *.* to xcj@'%' identified by "xcj_passwd";
Query OK, 0 rows affected (0.04 sec)
#生效新加用户xcj权限
mysql> flush privileges;
Query OK, 0 rows affected (0.03 sec)
mysql> use mysql;
mysql> GRANT ALL ON *.* TO admin@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;
#这句话的意思 ,允许任何IP地址(上面的 % 就是这个意思)的电脑 用admin帐户 和密码(admin)来访问这个MySQL Server
#必须加类似这样的帐户,才可以远程登陆。 root帐户是无法远程登陆的,只可以本地登陆
可能需要service mysql restart
在linux安装mysql,并设置远程访问的更多相关文章
- linux安装mysql之设置远程访问权限
1.将3306端口加入防火墙 /sbin/iptables -I INPUT -p tcp --dport 3306-j ACCEPT #添加端口3306/etc/rc.d/init.d/iptab ...
- Ubuntu 16.04 安装mysql并设置远程访问
说明: 一个朋友在使用ubuntu-server 16.04安装mysql,设置远程访问的时候出现了问题,请我帮忙.但是,我也没有使用过ubuntu安装mysql,于是乎搜索了很多技术文件,比着葫芦画 ...
- Ubuntu Server 16.04 安装MySQL并设置远程访问
Ubuntu Server 16.04 安装MySQL 1. 使用root账号 sudo apt-get install mysql-serversudo apt-get install mysql- ...
- Ubuntu安装mysql及设置远程访问方法
ubuntu上安装mysql非常简单只需要几条命令就可以完成. 1. sudo apt-get install mysql-server 2. apt-get isntall mysql-clie ...
- 【Linux】安装mysql之设置远程访问权限
最近重装了云主机,又要安装各种东西,其中一个就要设置mysql权限 出于学习方便,我在自己的云主机上安装的是phpstudy集成环境,所以要进入mysql控制台不能直接用“mysql -u root ...
- Linux 安装 MySQL 8 数据库(图文详细教程)
本教程手把手教你如何在 Linux 安装 MySQL 数据库,以 CentOS 7为例. 1. 下载并安装 MySQL 官方的 Yum Repository wget -i -c https://re ...
- 解决虚拟机linux端mysql数据库无法远程访问
解决虚拟机linux端mysql数据库无法远程访问 1. 在控制台执行 mysql -u root -p mysql,CentOS系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台 ...
- ubuntu安装mysql后不能远程访问的方法
ubuntu安装mysql后不能远程访问的方法1.mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassw ...
- linux安装mysql后root无法登录 sql 无法登录
linux安装mysql后root无法登录 问题:[root@localhost mysql]# mysql -u root -pEnter password: ERROR 1045 (28000): ...
- ubuntu下安装mysql和配置远程访问
ubuntu下安装mysql和配置远程访问 下载安装mysql sudo apt-get install mysql-client mysql-server 安装的时候会提示要设置root密码,如 ...
随机推荐
- 彻底掌握this,call,apply
说起js里面比较头疼的知识点,this的指向,call与apply的理解这三者肯定算的上前几,好的js开发者这是必须迈过的槛.今天就总结下这三者紧密相连的关系. 首先推荐理解call的用法 Funct ...
- LINQ-to-SQL那点事~利用反射在LINQ-to-SQL环境中实现Ado.net的CURD操作
回到目录 对于linq to sql提供的CURD操作,给我们的感觉就是简单,容易使用,更加面向对象,不用拼SQL语句了,这些好处都表示在处理单条实体或者集合长度小的情况下,如果有一个1000条的集合 ...
- .NET开发中经常用到的扩展方法
整理一下自己经常用到的几个扩展方法,在实际项目中确实好用,节省了不少的工作量. 1 匿名对象转化 在WinForm中,如果涉及较长时间的操作,我们一般会用一个BackgroundWorker来做封装 ...
- 远哥教你MuleESB系列视频教程
远哥教你MuleESB系列视频课程介绍(共11个视频) 1.Mule ESB介绍 2.社区版/企业版的区别和安装 3.MuleESB快速入门,以及MEL和Message结构 4.官方例子讲解( ...
- 一个优秀windows C++程序员的知识体系
思考一个优秀windows C++ 程序员该有哪些知识,可最终发现什么知识都不能少, 看下图: 除了上面知识,程序员还要不断学习, 保持对新知识的热情. 转自http://www.cppblog.co ...
- AngularJS和DataModel
通常,在AngularJS中使用JSON作为存储数据的模型.我们可能这样在controller中写model: app.controller('BookController',['$scope',fu ...
- C++多线程开发之actor model
最近想把写过的一个多线程程序整理一下,这个程序主要特点是有一系列的互相之间有依赖关系的task.于是在网上找相关类库 1,一类是简单的线程池了,这也是原本俺的做法.之前使用的是手工调度,代码实现的很蛋 ...
- Eclipse 基于接口编程的时候,快速跳转到实现类的方法(图文)
Eclipse 基于接口编程的时候,要跳转到实现类很麻烦,其实Eclipse已经实现该功能. 只要按照Ctrl键,把鼠标的光标放在要跳转的方法上面,第一个是跳转到接口里面,第二个方法是跳转到实现类的位 ...
- [salesforce] standard button
Use Case In Salesforce, when you click on the standard ‘New’ button on a Related List to create a ne ...
- linux部署war包方案
batch.sh内容: su - -c" 使用管理员权限 service tomcat6 stop; 停止tomca6t服务 mkdir /home/jnfwzFtp/bushubackup ...