参考网址:http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html
因为mysql数据库在linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已经安装了mysql数据库
[root@xiaoluo ~]# rpm -qa | grep mysql // 这个命令就会查看该操作系统上是否已经安装了mysql数据库
有的话,我们就通过 rpm -e 命令 或者 rpm -e –nodeps 命令来卸载掉
[root@xiaoluo ~]# rpm -e mysql // 普通删除模式 [root@xiaoluo ~]# rpm -e –nodeps mysql // 强力删除模式,如果使用上面命令删除时,提示有依赖的其它文件,则用该命令可以对其进行强力删除
在删除完以后我们可以通过 rpm -qa | grep mysql 命令来查看mysql是否已经卸载成功!!
我是通过yum的方式来进行mysql的数据库安装,首先我们可以输入 yum list | grep mysql 命令来查看yum上提供的mysql数据库可下载的版本:
[root@xiaoluo ~]# yum list | grep mysql
就可以得到yum服务器上mysql数据库的可下载版本信息:
然后我们可以通过输入 yum install -y mysql-server mysql mysql-devel 命令将mysql mysql-server mysql-devel都安装好(注意:安装mysql时我们并不是安装了mysql客户端就相当于安装好了mysql数据库了,我们还需要安装mysql-server服务端才行)
[root@xiaoluo ~]# yum install -y mysql-server mysql mysql-devel
在等待了一番时间后,yum会帮我们选择好安装mysql数据库所需要的软件以及其它附属的一些软件
[root@xiaoluo ~]# rpm -qi mysql-server
我们安装的mysql-server并不是最新版本,如果你想尝试最新版本,那就去mysql官网下载rpm包安装就行了,至此我们的mysql数据库已经安装完成了。
我们在安装完mysql数据库以后,会发现会多出一个mysqld的服务,这个就是咱们的数据库服务,我们通过输入
service mysqld start
命令就可以启动我们的mysql服务。
注意:如果我们是第一次启动mysql服务,mysql服务器首先会进行初始化的配置,如: 我们在使用mysql数据库时,都得首先启动mysqld服务,我们可以 通过 chkconfig –list | grep mysqld 命令来查看mysql服务是不是开机自动启动,如:
[root@xiaoluo ~]# chkconfig –list | grep mysqld mysqld 0:关闭 1:关闭 2:关闭 3:关闭 4:关闭 5:关闭 6:关闭
我们发现mysqld服务并没有开机自动启动,我们当然可以通过 chkconfig mysqld on 命令来将其设置成开机启动,这样就不用每次都去手动启动了 root@xiaoluo ~]# chkconfig mysqld on [root@xiaoluo ~]# chkconfig –list | grep mysql mysqld 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
mysql数据库安装完以后只会有一个root管理员账号,但是此时的root账号还并没有为其设置密码,在第一次启动mysql服务时,会进行数据库的一些初始化工作,在输出的一大串信息中,我们看到有这样一行信息
/usr/bin/mysqladmin -u root passWord ‘new-password’ // 为root账号设置密码
所以我们可以通过 该命令来给我们的root账号设置密码(注意:这个root账号是mysql的root账号,非Linux的root账号)
[root@xiaoluo ~]# mysqladmin -u root password ‘root’ // 通过该命令给root账号设置密码为 root
###linux如何登陆mysql
此时我们就可以通过 mysql -u root -p 命令来登录我们的mysql数据库了
vi /etc/my.cnf 这是mysql的主配置文件
[root@xiaoluo etc]# ls my.cnf my.cnf
[root@xiaoluo etc]# cat my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql Disabling symbolic-links is recommended to PRevent assorted security risks symbolic-links=0
[mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
我们的mysql数据库的数据库文件通常是存放在了/ver/lib/mysql这个目录下 [root@xiaoluo ~]# cd /var/lib/mysql/ [root@xiaoluo mysql]# ls -l 总用量 20488 -rw-rw—-. 1 mysql mysql 10485760 4月 6 22:01 ibdata1 -rw-rw—-. 1 mysql mysql 5242880 4月 6 22:01 ib_logfile0 -rw-rw—-. 1 mysql mysql 5242880 4月 6 21:59 ib_logfile1 drwx——. 2 mysql mysql 4096 4月 6 21:59 mysql // 这两个是mysql数据库安装时默认的两个数据库文件 srwxrwxrwx. 1 mysql mysql 0 4月 6 22:01 mysql.sock drwx——. 2 mysql mysql 4096 4月 6 21:59 test // 这两个是mysql数据库安装时默认的两个数据库文件
创建一个我们自己的数据库: mysql> create database xiaoluo; Query OK, 1 row affected (0.00 sec)
[root@xiaoluo mysql]# ls -l 总用量 20492 -rw-rw—-. 1 mysql mysql 10485760 4月 6 22:01 ibdata1 -rw-rw—-. 1 mysql mysql 5242880 4月 6 22:01 ib_logfile0 -rw-rw—-. 1 mysql mysql 5242880 4月 6 21:59 ib_logfile1 drwx——. 2 mysql mysql 4096 4月 6 21:59 mysql srwxrwxrwx. 1 mysql mysql 0 4月 6 22:01 mysql.sock drwx——. 2 mysql mysql 4096 4月 6 21:59 test drwx——. 2 mysql mysql 4096 4月 6 22:15 xiaoluo // 这个就是我们刚自己创建的xiaoluo数据库 [root@xiaoluo mysql]# cd xiaoluo/ [root@xiaoluo xiaoluo]# ls db.opt
我们的mysql数据库的一些日志输出存放位置都是在/var/log这个目录下 [root@xiaoluo xiaoluo]# cd [root@xiaoluo ~]# cd /var/log [root@xiaoluo log]# ls amanda cron maillog-20130331 spice-vdagent.log anaconda.ifcfg.log cron-20130331 mcelog spooler anaconda.log cups messages spooler-20130331 anaconda.program.log dirsrv messages-20130331 sssd anaconda.storage.log dmesg mysqld.log tallylog anaconda.syslog dmesg.old ntpstats tomcat6 anaconda.xlog dracut.log piranha wpa_supplicant.log anaconda.yum.log gdm pm-powersave.log wtmp audit httpd ppp Xorg.0.log boot.log ibacm.log prelink Xorg.0.log.old btmp lastlog sa Xorg.1.log btmp-20130401 libvirt samba Xorg.2.log cluster luci secure Xorg.9.log ConsoleKit maillog secure-20130331 yum.log 其中mysqld.log 这个文件就是我们存放我们跟mysql数据库进行操作而产生的一些日志信息,通过查看该日志文件,我们可以从中获得很多信息
因为我们的mysql数据库是可以通过网络访问的,并不是一个单机版数据库,其中使用的协议是 tcp/ip 协议,我们都知道mysql数据库绑定的端口号是 3306 ,所以我们可以通过 netstat -anp 命令来查看一下,Linux系统是否在监听 3306 这个端口号:
参考文章:http://blog.csdn.net/gent__chen/article/details/51065723 一台电脑上安装了Workbench,现需要访问另一台Ubuntu服务器上的MySQL数据库,但mysql默认是不允许访问的,考虑到安全性问题,也不适合使用root用户来访问mysql。
这时我们就需要开放mysql服务器并创建新的用户来访问mysql。
1,开放mysql
mysql的配置文件在/etc/mysql/my.cnf文件内,里面有一行bind-address = 127.0.0.1表示只允许本地访问,将这行注释即可
2,创建新的mysql用户
(1)首先在本地进入mysql数据库的mysql库内
(2)创建用户:GRANT ALL ON . to user@’IP’ IDENTIFIED BY ‘password’; 其中user表示需要创建用户的名字;IP表示哪台客户端想要访问mysql数据库;password表示密码;并赋予所有的权限。
(3)FLUSH PRIVILEGES; 刷新mysql的系统权限相关表,否则会出现拒绝访问。重启数据库也能达到这样的效果
3,重启数据库
使用指令 sudo service mysql restart 来重启数据库
4,使用workbench连接数据库
其中主机名表示需要连接的数据库ip
连接成功的效果
点击进入的页面
注意:不能访问ubuntu服务器内Docker容器环境下的mysql
新闻热点
疑难解答