MariaDB是MySQL数据库的一个分支版本,该版本主要是通过开源社区进行维护,MariaDB可以完全兼容MySQL(包括API和命令),主要区别在于存储引擎使用了XtraDB代替了InnoDB。
安装MariaDB软件包
通过一下命令进行安装:
# apt install mariadb-server python-pymysql
配置mySQL服务启动参数,为后续安装openStack提前准备好数据库环境
创建启动参数配置文件:/etc/mysql/mariadb.conf.d/99-openstack.cnf
输入如下内容:
[mysqld]
default-storage-engine = innodb
innodb_file_per_table
max_connections = 2048
collation-server = utf8mb4_general_ci
character-set-server = utf8mb4
重新启动mysql数据库服务
使用一下命令重启mysql
#service mysql restart
如果没有异常情况,则不会有任何输出,这时候可以使用如下命令查看服务运行状态
#service mysql status
启动mysql异常提示无效的字符编码问题处理
在步骤3创建的配置文件由于参数的名称输错导致启动失败,提示不支持utf8_general_ci
[mysqld]
default-storage-engine = innodb
innodb_file_per_table
max_connections = 2048
collation-server = utf8_general_ci
character-set-erver = utf8
启动MySQL服务失败这时候可以通过命令以下命令查看具体原因:
systemctl status mysql.service
通过检测发现character-set-erver参数名输错了导致启动失败,将其改为
character-set-server = utf8 即可
给mysql进行安全加固
使用脚本 mysql_sercure_installation进行mysql数据库安全加固
# mysql_secure_installation
启动脚本后按提示进行安全加固 *** 作即可完成
使用mysql命令行连接mysql服务,验证mysql服务是否正常
#myslq -uroot -p
输入root密码即可连接到本机的mysql服务
使用IP地址方式连接和管理MySQL
使用如下命令进行连接MySQL发现连接异常(192.168.122.1为本机的IP地址)
#mysql -h192.168.122.1 -uroot -p
输入密码后发现连接失败,原因是因为我们配置的mysql服务参数中没有绑定IP地址,系统默认使用了local主机名进行,那么通过参数设定绑定IP地址即可
修改启动参数配置文件:/etc/mysql/mariadb.conf.d/99-openstack.cnf,增加IP地址绑定
[mysqld]
bind-address = 192.168.122.1
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
1、Centos 7 默认不支持mysql (都是因为钱),所以centos 7默认支持的是mariadb何为mariadb?
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。
说到这,我个人强烈推荐大家开始学习MariaDB,当然由于我们一些项目还是要用mysql的,所以不能放弃。真不难学。
接下来 我讲一下centos 7对mysql的安装过程
1、如果一定要在centos 7上安装mysql ,需要卸载MariaDB,否则会冲突。
2、执行这个命令:rpm -qa | grep mariadb
3、这时会出现一些列表,都是mariadb的包,接下来我们要干掉
4、执行如下命令rpm -e –nodeps mariadb-libs-XXXXX.x86_64 (注意我这里的xxxx, 要根据第三步出现的列表 ,挨个干)
5、干完后,就可以安装mysql了。
6、去度娘搜索mysql的rpm包,一大把。我用的是5.6.22 .(找不到的,问我要)
ww
这里需要安装 至少2个,1个是mysql-server-xxxx.rpm (这个就是服务端), 还有一个是mysql-client-xxxx.rpm(这个是客户端,不想装?不装的话你没法初始化root密码,求懂)
7、执行 rpm -ivh “上面两个文件名 ”
8、这样就装好了。
9、然后 执行:service mysql start (如果OK,说明装好了)
10、再然后执行:service mysql stop (不要问为什么,因为默认root没有密码,你进不去,所以接下来我们要绕过密码登录)
11、执行这个命令:mysqld_safe –user=mysql –skip-grant-tables –skip-networking &mysql -u root mysql (也就是,老子不用密码直接登录,这时mysql服务必须关闭状态)
12、然后执行这个命令:UPDATE user SET Password=PASSWORD(‘XXXXX’) where USER=’root’ 这里就是对root账号初始化密码,xxx自行改,不要忘了。忘掉的话就要用第11步初始化(谁说没有密码就不能进mysql?)
13、然后执行 flush privileges (注意不要忘记最后的分号,必须有,不要问为什么)
14、然后输入quit退出mysql客户端。
15、重新启动mysql,命令:service mysql start
16、然后用root账号登录 命令:mysql -u root -p (接下来会提示你输入密码,此时屏幕不可见,不要以为死机了)
17、这时随便执行一个sql,譬如 show databases
18、这时会报错,大约是You must SET PASSWORD before executing this statement .其实就是我们常见的:第一次登录需要改密码,
19、那我们就改一改吧,反正不会怀孕
20、执行 SET PASSWORD = PASSWORD(‘xxxx’) 注意分号,也可以把密码跟上面搞得一样。
21、然后再去执行 一些sql,看看对不对。对的话quit
22、最后,我们最好吧mysql重启一下. service mysql restart
23、然后配置远程可以连接(注意刚才我们都是在本机 *** 作的哦~~~~)
24、依然mysql -u root -p 输入密码后登入
25、执行:GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’ IDENTIFIED BY ‘这里填你的密码’ WITH GRANT OPTION(这里root@后面的百分号代表全宇宙都可以连接你的mysql,只要知道密码) ,如果是仅仅允许某个IP连接,那么把这个百分号换成某个ip即可
26 、FLUSH PRIVILEGES并且退出
27、保险起见,再重启mysql服务
好吧,OK了。接下来大家可以用navicate 去连接啦
首先要确保电脑正常上网,才能通过yum安装。2
执行yum install mysql进行安装。并在提示时输入y。
然后系统会自动寻找安装包,并进行安装。下图显示已成功安装完毕。
安装完毕后,尝试启动数据库。
系统提示找不到这个服务。再次看一下安装的包:
#rpm -qa |grep mysql
命令返回空,说明刚才没有安装成功。只好再次安装了。不过这次我们在命令后面加上*号。
看图,需要安装的包还真多!安装完成后,却发现只安装了JDBC和ODBC驱动。
我们在软件库中搜一下带mysql关键字的软件包:
返回的结果显示,软件库中根本就没有mysql软件包。这个时候,迷茫的开始查资料,资料显示在Centos7中用MariaDB代替了mysql数据库。好吧!那我们来安装MariaDB数据库吧!
*** 做方法同上,只不过在命令行里,把mysql改成了mariadb。
安装包一共59M
安装完成。
查看安装之后的包:
根据资料,mariadb数据库的启动命令是:
systemctl start mariadb #启动MariaDB
systemctl stop mariadb #停止MariaDB
systemctl restart mariadb #重启MariaDB
systemctl enable mariadb #设置开机启动
我执行以上命令,没有任何返回值。看来得研究一下mariadb数据了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)