发表于: 2021-11-04 23:46:59

1 857


部署阿里云centos mysql数据库

购买轻量级服务器购买以后重新设置root密码

在终端中输入

SSH root@服务器地址

 连接成功后 

下载Mysql 数据库

yum install mysql-server

Systemctl status mysql-server  查看mysql状态

[root@iZwz9f1ba8y91wwq5gzmwjZ ~]# systemctl status mysqld

mysqld.service - MySQL 8.0 database server

   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled)

   Active: active (running) since Thu 2021-11-04 19:28:57 CST; 3h 52min ago

  Process: 1754 ExecStartPost=/usr/libexec/mysql-check-upgrade (code=exited, status=0/SUCCESS)

  Process: 1671 ExecStartPre=/usr/libexec/mysql-prepare-db-dir mysqld.service (code=exited, status=0/SUCCESS)

  Process: 1645 ExecStartPre=/usr/libexec/mysql-check-socket (code=exited, status=0/SUCCESS)

 Main PID: 1708 (mysqld)

   Status: "Server is operational"

    Tasks: 39 (limit: 10836)

   Memory: 751.0M

   CGroup: /system.slice/mysqld.service

           └─1708 /usr/libexec/mysqld --basedir=/usr

表示安装成功
systemctl restart mysqld  重启mysql 服务
systemctl start mysqld   启动mysql 服务
systemctl stop mysqld    停止mysql 服务

因为mysql 安装后默认为空密码,因需要远程访问所以要设置密码
mysql -u root -p    设置新密码

mysql默认只对本机开放连接,我则需要对mysql表的host字段进行修改一直吃其他主机连接,% 表示所有。
 进去数据库

mysql>use mysql;

mysql>update user set host = '%' where user = 'root’;

进入mysql数据库,输入show global variables like 'port';  查看端口号
mysql> show global variables like 'port';  

+---------------+-------+  
| Variable_name | Value |  
+---------------+-------+  
| port | 3306 |  
+---------------+-------+  

1 row in set (0.00 sec)  
修改端口,编辑文件,vim /etc/my.conf,添加端口参数:
#
# This group is read both both by the client and the server
# use it for options that affect everything
#
[client-server]
[mysqld]
port=3306
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d


 然后重启mysql:
systemctl restart mysqld.service
防火墙:
查看防火墙状态:
systemctl status firewalld开放端口放行:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
加上--permanet参数永久生效,如果前面修改了端口号,此处的3306就应改成对应的端口号,然后使用命令重新读取防火墙规则:
firewall-cmd --reload

至此,MySQL端口号和防火墙配置完毕! 开放端口放行:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
加上--permanet参数永久生效,如果前面修改了端口号,此处的3306就应改成对应的端口号,然后使用命令重新读取防火墙规则:

firewall-cmd --reload

至此,MySQL端口号和防火墙配置完毕!
进入阿里云控制台设置防火墙 添加规则 开放3306端口
然后就可以用navivat 连接远程数据库了。

用昨天的项目中的实例创建数据库与表,

更改SqlMapConfig.xml中

<dataSource type="POOLED">
   <property name="driver" value="com.mysql.jdbc.Driver"/>
   <property name="url" value="jdbc:mysql://服务器地址:3306/task"/>
   <property name="username" value="root"/>
   <property name="password" value="********"/>

然后跑这个测试

@Test
public void testBatchInsert() {
List<User> users = new ArrayList<User>();
   int userCount = 10000;
   User user = new User();
   for (int i = 0; i != userCount; i++) {
user.setUsername("李建");
       user.setSex("男");
       user.setAddress("深圳");
       Date date = new Date();
       date.setTime(100L);
       user.setBirthday(date);
       users.add(user);

   }
dao.insertBatch(users);

}

先10000条测试,在100000条测试,200000条测试。

400000条的时候就报错了内存溢出

内存不够了,待解决!!!!

思考明天在数据库中添加100w条数据 10000w条数据怎么解决!!



返回列表 返回列表
评论

    分享到